lseek()函数在C语言中用于控制文件指针的偏移,其原型为:
#include <unistd.h>
off_t lseek(int fd, off_t offset, int whence);
其中,fd是文件描述符,offset是偏移量,whence是起始位置。
lseek()函数的调用方式如下:
#include <unistd.h>
#include <fcntl.h>
int main() {
int fd = open("filename", O_RDWR);
off_t offset = 10;
int whence = SEEK_SET;
off_t result = lseek(fd, offset, whence);
if (result == -1) {
// 处理错误
}
// 进一步处理文件指针位置
close(fd);
return 0;
}
在上述示例中,首先使用open()函数打开一个文件,并获得文件描述符(fd),然后设置偏移量(offset)和起始位置(whence),调用lseek()函数进行偏移。
调用lseek()函数后,会返回新的文件指针位置(result),如果返回值为-1,则说明调用失败,可以通过处理错误来处理异常情况。
最后,通过close()函数关闭文件,并返回程序正常退出。