lseek
是一个系统调用函数,用于在文件中移动文件指针的位置。它接受三个参数:文件描述符(file descriptor),偏移量(offset)和起始位置(whence)。
#include <unistd.h>
off_t lseek(int fd, off_t offset, int whence);
fd
:文件描述符,表示要操作的文件。offset
:偏移量,可以是正数、负数或零,代表相对于whence
参数所指定位置的位移量。whence
:起始位置,决定了计算偏移量时的参考点。它可以是以下三个值之一:SEEK_SET
:从文件开始处计算偏移量。SEEK_CUR
:从当前文件指针位置计算偏移量。SEEK_END
:从文件末尾处计算偏移量。
成功调用后,返回新的文件指针位置;失败则返回 -1,并设置相应的错误代码。通过改变文件指针的位置,我们可以实现读取特定部分数据或者修改文件内容等操作。
内容由零声教学AI助手提供,问题来源于学员提问