如何调用 C 例程 'lseek'?
How can I call the C routine 'lseek'?
如何调用 C 例程 lseek
或 ftell
或 fseek
?
我试过这个(macos 10.12.6):
import os
#flag -lsystem
#include <unistd.h>
seeker.v:150:11: error: unknown function: C.lseek
148 | // tell returns the current file position
149 | fn (f os.File) tell() int {
150 | return C.lseek(f.fd, 0, C.SEEK_CUR)
151 | }
您必须在使用 C 函数之前声明它们!
fn C.lseek(fd, offset, whence int)
这允许 V 知道函数的参数,并对其进行类型检查。
如何调用 C 例程 lseek
或 ftell
或 fseek
?
我试过这个(macos 10.12.6):
import os
#flag -lsystem
#include <unistd.h>
seeker.v:150:11: error: unknown function: C.lseek
148 | // tell returns the current file position
149 | fn (f os.File) tell() int {
150 | return C.lseek(f.fd, 0, C.SEEK_CUR)
151 | }
您必须在使用 C 函数之前声明它们!
fn C.lseek(fd, offset, whence int)
这允许 V 知道函数的参数,并对其进行类型检查。