这篇文章主要介绍了C语言fseek(f,0,SEEK_SET)函数案例详解,本篇文章通过简要的案例,讲解了该项技术的了解与使用,以下就是详细内容,需要的朋友可以参考下
fseek(f,0,SEEK_SET);
意思是把文件指针指向文件的开头
fseek
函数名:fseek
功能:重定位流上的文件指针
用法:int fseek(FILE *stream,long offset,int from where);
描述:函数设置文件指针溪流的位置。如果执行成功,流将指向以从哪里为基准,偏移抵消个字节的位置。如果执行失败(比如抵消超过文件自身大小),则不改变溪流指向的位置。
返回值:成功,返回0,否则返回其他值。
流引用的文件的文件位置指针,指向由偏移量计算的字节位置。
程序例:
#包含标准视频
长文件大小(文件*流);
int main(void)
{
文件*流;
stream=fopen('MYFILE .TXT ',' w ');
fprintf(流,'这是一个测试');
printf('我的文件的文件大小. TXT为%ld字节\n ',文件大小(流));
fclose(流);返回0;}
长文件大小(文件*流)
{
长卷曲,长度;
curpos=ftell(流);
fseek(stream,0L,SEEK _ END);
长度=ftell(流);
fseek(stream,curpos,SEEK _ SET);
返回长度;
}
int fseek( FILE *stream,long offset,int origin);
第一个参数溪流为文件指针
第二个参数抵消为偏移量,整数表示正向偏移,负数表示负向偏移
第三个参数起源设定从文件的哪里开始偏移,可能取值为:搜索当前、搜索结束或SEEK_SET
SEEK_SET:文件开头
搜索_当前:当前位置
寻道_结束:文件结尾
其中SEEK_SET,SEEK_CUR和寻道_结束和依次为0,1和2.
简言之:
fseek(fp,100L,0);把复调钢琴指针移动到离文件开头100字节处;
fseek(fp,100L,1);把复调钢琴指针移动到离文件当前位置100字节处;
fseek(fp,100L,2);把复调钢琴指针退回到离文件结尾100字节处。
使用实例:
# includestdio.h
#定义5
typedefstructstudent{
朗斯诺;
charname[10];
floatscore[3];
}斯图;
voidfun(char*filename,STUn)
{
文件* fp
fp=fopen(文件名,‘Rb’);
fseek(fp,-1L*sizeof(STU),SEEK _ END);
fwrite(n,sizeof(STU),1,FP);
fclose(FP);
}
voidmain()/*修改覆盖最后一个学生数据*/
{
STUt[N]={{10001,'马超',91,92,77},{10002,'曹凯',75,60,88},
{10003,'李四',85,70,78},{10004,'芳芳',90,82,87},
{10005,'张三',95,80,88 } };
STUn={10006,’赵四,55,70,68},ss[N];
inti,j;文件* fp
fp=fopen('student.dat ',' WB ');
fwrite(t,sizeof(STU),N,FP);
fclose(FP);
fp=fopen('student.dat ',' Rb ');
fread(ss,sizeof(STU),N,FP);
fclose(FP);
printf(' \ ntherorialdata:\ n \ n ');
for(j=0;jN;j)
{
printf(' \ n编号:%ldName:%-8sScores:',ss[j].斯诺,ss[j].姓名);
for(I=0;i3;i )printf('%6.2f ',ss[j].score[I]);
printf(' \ n ');
}
fun('student.dat ',n);
printf(' \ nthedataaftermodificing:\ n \ n ');
fp=fopen('student.dat ',' Rb ');
fread(ss,sizeof(STU),N,FP);
fclose(FP);
for(j=0;jN;j)
{
printf(' \ n编号:%ldName:%-8sScores:',ss[j].斯诺,ss[j].姓名);
for(I=0;i3;i )printf('%6.2f ',ss[j].score[I]);
printf(' \ n ');
}
}
到此这篇关于C语言fseek(f,0,SEEK_SET)函数案例详解的文章就介绍到这了,更多相关C语言fseek(f,0,SEEK_SET)函数内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。