fseek怎么用,effaclar k+怎么使用
老铁们,大家好,相信还有很多朋友对于fseek怎么用和effaclar k+怎么使用的相关问题不太懂,没关系,今天就由我来为大家分享分享fseek怎么用以及effaclar k+怎么使用的问题,文章篇幅可能偏长,希望可以帮助到大家,下面一起来看看吧!
fseek函数是怎么用的
fseek函数用于重定位流(数据流/文件)上的文件内部位置指针。
函数原型int fseek(FILE*stream, long offset, int fromwhere);
参数:
stream为文件流的指针
offset偏移量
fromwhere起始位置
具体功能:如果执行成功,stream将指向以fromwhere(起始位置:文件头0(SEEK_SET),当前位置1(SEEK_CUR),文件尾2(SEEK_END))为基准,偏移offset(指针偏移量)个字节的位置。如果执行失败(比如offset超过文件自身大小),则不改变stream指向的位置。
返回值:
成功,返回0,失败返回-1,并设置errno的值,可以用perror()函数输出错误。
实例:
#include<stdio.h>
long filesize(FILE*stream);
int main(void)
{
FILE*stream;
stream=fopen("MYFILE.TXT","w+");
fprintf(stream,"This is a test");
printf("File size of MYFILE.TXT is%ld bytes\n",filesize(stream));
fclose(stream);
return 0;
}
long filesize(FILE*stream)
{
long curpos,length;
curpos=ftell(stream);
fseek(stream,0L,SEEK_END);
length=ftell(stream);
fseek(stream,curpos,SEEK_SET);
return length;
}
函数fseek()的正确调用形式是( )。
【答案】:B
指针函数fseek()的调用形式为:fseek(fp,offset,position);fseek函数参数说明:“fp”是指向该文件的文件型指针;“offset”为位移量,是指从起始点position到要确定的新位置的字节数。以起点为基准,向前移动字节数。“position”为起始点,指出以文件的什么位置为基准进行移动,position的值用整型常数表示,“0”表示文件的开头,“1”表示文件的当前位置,“2”表示文件的末尾。
c语言中fread函数怎么用
c语言中fread函数语法为size_tfread(void*restrictbuffer,size_tsize,size_tcount,FILE*restrictstream)。buffer是指向要读取的数组中首个对象的指针,size是每个对象的大小(单位是字节),count是要读取的对象个数,stream是输入流。通过fread函数可进行数据读取,返回成功读取的对象个数。
扩展资料:
fread函数从给定输入流stream读取最多count个对象到数组buffer中(相当于以对每个对象调用size次fgetc),把buffer当作unsignedchar数组并顺序保存结果。流的文件位置指示器前进读取的字节数。
若出现错误,则流的文件位置指示器的位置不确定。若没有完整地读入最后一个元素,则其值不确定,可能小于count。若size或count为零,则fread返回零且不进行其他动作。fread不区分文件尾和错误,因此调用者必须用feof和ferror才能判断发生了什么。
OK,本文到此结束,希望对大家有所帮助。