int fseek(FILE stream, long int offset, int whence);
fseek
函数将
long int
从
whence
指定的位置开始计算的偏移量。
whence
int
偏移量的开始位置。可以是以下值之一:
SEEK_SET
:从文件的开头开始计算偏移量。
SEEK_CUR
:从当前文件指针的位置开始计算偏移量。
SEEK_END
:从文件的末尾开始计算偏移量。
成功时,
fseek
函数返回 0。出错时,返回 -1,并设置
errno
以指示错误。
fseek
函数可能引发以下错误代码:
EBADF
:文件描述符无效。
EINVAL
:偏移量无效。
ESPIPE
:文件流不是线性设备。
include
include int main() {FILE fp;char buffer[100];// 打开一个文件fp = fopen("data.txt", "r");if (fp == NULL) {perror("fopen");exit(EXIT_FAILURE);}// 将文件指针移动到文件开头if (fseek(fp, 0, SEEK_SET) != 0) {perror("fseek");fclose(fp);exit(EXIT_FAILURE);}// 从文件中读取数据if (fread(buffer, sizeof(char), 100, fp) != 100) {perror("fread");fclose(fp);exit(EXIT_FAILURE);}// 关闭文件fclose(fp);return 0;
}
fseek
函数会修改文件流的当前位置。
fseek
函数可以将文件指针移动到文件的任意位置。对于二进制文件,
fseek
函数只能将文件指针移动到文件中的字节边界。
fseek
函数失败,文件流将处于未定义状态。在这种情况下,应该关闭文件流并重新打开。
本文地址:https://www.qianwe.com/article/329057951311d229202e.html
上一篇:JavaScript教程全面指南,从入门到精通javasc...
下一篇:HorizontalAlignmenthorizon公路车...