C语言fseek()函数:重定位流上的文件指针

点击打开在线编译器,边学边练

函数名: fseek

头文件:<stdio.h>

函数原型: int fseek(FILE *stream, long offset, int fromwhere);

功 能: 重定位流上的文件指针 在流上重新定位文件结构的位置。fseek设置与流stream相联系的文件指针到新的位置,新位置与fromwhere给定的文件位置的距离为offset字节。

参 数: FILE *stream   要重定位的流

            long offset    重定位的偏移量

            int fromwhere  重定位的位置  

返回值: 成功   返回0 ,出错或失败   返回非0值。

补 充: fromwhere的取值必须是0,1或2中的一个分别代表在stdio.h中定义的三个符号常量:

            0是SEEK_SET,是文件开始位置;

            1是SEEK_CUR,是当前的指针位置;

            2时SEEK_END,是文件末尾。

            调用了fseek之后,在更新的文件位置上,下一个操作可以是输入;也可以是输出。


程序例:  打开文件,将字符串输入到文件流stream中,并重定位到文件的开头,输出文件的长度

#include<stdio.h>

long filesize(FILE *stream);

int main(void){

   FILE *stream = fopen("myfile.txt", "w+");

   fprintf(stream, "www.dotcpp.com");

   fseek(stream, 0, SEEK_END);

   printf("Filesize of myfile.txt is %ld bytes\n", ftell(stream));

   fclose(stream);

   return 0;

}

 

运行结果

Filesize of myfile.txt is 14 bytes



本文固定URL:https://www.dotcpp.com/course/514

C语言函数库
<assert.h>头文件
<ctype.h>头文件
<float.h>头文件
<io.h>头文件
<math.h>头文件
<mem.h>头文件
<setjmp.h>头文件
<stdio.h>头文件
<stdlib.h>头文件
<signal.h>头文件
<string.h>头文件
<time.h>头文件
Dotcpp在线编译      (登录可减少运行等待时间)