2024年4月25日发(作者:)

c语言fseek用法

fseek函数用于设置文件指针的位置。

函数原型:

c

int fseek(FILE *stream, long offset, int origin);

参数说明:

- stream:指向要设置位置的文件的指针。

- offset:偏移量,可以是正数或负数。正数表示向文件

末尾方向移动,负数表示向文件开头方向移动。

- origin:指定偏移量的起始位置,可以取以下三个值:

- SEEK_SET:从文件开头开始计算偏移量。

- SEEK_CUR:从当前位置开始计算偏移量。

- SEEK_END:从文件末尾开始计算偏移量。

返回值:

- 成功:返回0。

- 失败:返回非0值。

使用示例:

c

#include

int main() {

FILE *file = fopen("", "r");

if (file == NULL) {

printf("文件打开失败n");

return 1;

}

// 设置文件指针位置为文件开头

int result = fseek(file, 0, SEEK_SET);

if (result != 0) {

printf("设置文件指针位置失败n");

return 1;

}

// 读取文件内容

char buffer[100];

fgets(buffer, sizeof(buffer), file);

printf("%s", buffer);

fclose(file);

return 0;

}

以上示例中,首先使用fopen函数打开一个名为

""的文件,然后使用fseek函数将文件指针位

置设置为文件开头。接着使用fgets函数读取文件内容并

输出。最后使用fclose函数关闭文件。

注意事项:

- fseek函数只能用于二进制文件或以二进制方式打开的文

本文件,对于以文本方式打开的文件,使用fseek函数可

能导致未定义的行为。

- fseek函数在移动文件指针时不会自动扩展文件大小,如

果将文件指针设置到文件末尾之外的位置,写入文件内容

可能会导致文件大小增加。

- fseek函数在移动文件指针时不会改变文件内容,只是改

变文件指针的位置。