c语言中ferror函数 c语言feof函数

请问feof函数和ferror函数有什么区别?谢谢一、文件结束检测函数feof函数调用格式c语言中ferror函数: feof(文件指针)c语言中ferror函数;
功能c语言中ferror函数:判断文件是否处于文件结束位置,如文件结束,则返回值为1,否则为0 。
二、读写文件出错检测函数ferror函数调用格式: ferror(文件指针);
功能:检查文件在用各种输入输出函数进行读写时是否出错 。如ferror返回值为0表示未出错,否则表示有错 。
谁有c语言中int ferror(FILE *stream) , 返回非零0代表含义列表?哥们 , 给你参看以下:
函数名: ferror
功 能: 在调用各种输入输出函数(如 putc.getc.fread.fwrite等)时,如果出现错误,除了函数返回值有所反映外,还可以用ferror函数检查 。它的一般调用形式为 ferror(fp);如果ferror返回值为0(假),表示未出错 。如果返回一个非零值,表示出错 。应该注意,对同一个文件 每一次调用输入输出函数 , 均产生一个新的ferror函 数值 , 因此 , 应当在调用一个输入输出函数后立即检 查ferror函数的值,否则信息会丢失 。在执行fopen函数时,ferror函数的初始值自动置为0 。用 法: int ferror(FILE *stream); 程序例: #include stdio.h int main(void) { FILE *stream; /* open a file for writing */ stream = fopen("DUMMY.FIL", "w"); /* force an error condition by attempting to read */ (void) getc(stream); if (ferror(stream)) /* test for an error on the stream */ { /* display an error message */ printf("Error reading from DUMMY.FIL\n"); /* reset the error and EOF indicators */ clearerr(stream); } fclose(stream); return 0; }
c语言中的fgets函数 。fgets()函数用于从文件流中读取一行或指定个数的字符,其原型为:
char
*
fgets(char
*
string,
int
size,
FILE
*
stream);
参数说明:
string为一个字符数组,用来保存读取到的字符 。
size为要读取的字符的个数 。如果该行字符数大于size-1,则读到
size-1
个字符时结束,并在最后补充'
\0';如果该行字符数小于等于
size-1,则读取所有字符 , 并在最后补充
'\0' 。即,每次最多读取
size-1
个字符 。
stream为文件流指针 。
【返回值】读取成功,返回读取到的字符串,即string;失败或读到文件结尾返回NULL 。因此我们不能直接通过fgets()的返回值来判断函数是否是出错而终止的 , 应该借助feof()函数或者ferror()函数来判断 。
注意:fgets()与gets()不一样,不仅仅是因为gets()函数只有一个参数
FILE
*stream,更重要的是,fgets()可以指定最大读取的字符串的个数,杜绝了gets()使用不当造成缓存溢出的问题 。
C语言的EOF函数到底是怎么工作的?。?/h2>在没有输入时,getchar
函数将返回一个特殊值 , 这个特殊值与任何实际字符都不同 。这个
值称为EOF(end
of
file,文件结束) 。
c语言函数ferror和clearerr的具体实例用处ferror是检查是否出现错误 。
如果出现错误 , 那么其他文件读写操作是无法进行的 。
而clearerr就是清除这个错误标记,继续读写 。
这个只是读写文件用的,和执行函数没多大关系 。
比如,读到EOF , 这时会有一个最常见的错误标记,导致无法读写 。clearerr后,可以继续读写,比如重新定位到文件其他位置读数据等等 。但不能在EOF位置继续读,否则会马上产生一个新的ferror
c语言操作文本的基本使用方法 c语言操作文本应该怎么使用,这对于很多新手来说,是很难的一件事情,下面我为大家带来了关于c语言操作文本的基本使用方法,欢迎大家阅读!
c语言操作文本的基本使用方法
1.字符读写:
fgetc函数的功能是从指定的文件中读一个字符,函数调用的形式为:
字符变量=fgetc(文件指针);
fputc函数的功能是把一个字符写入指定的文件中 , 函数调用的形式为:
fputc(字符量,文件指针);
2.字符串读写
读字符串函数fgets
函数的功能是从指定的文件中读一个字符串到字符数组中,函数调用的形式为:
fgets(字符数组名,n,文件指针);
写字符串函数fputs
fputs函数的功能是向指定的文件写入一个字符串,其调用形式为:
fputs(字符串,文件指针);
3.数据块读写
读数据块函数调用的一般形式为:
fread(buffer,size,count,fp);
写数据块函数调用的`一般形式为:
fwrite(buffer,size,count,fp);
4.格式化读写
fscanf函数 , fprintf函数与前面使用的scanf和printf函数的功能相似,都是格式化读写函数 。两者的区别在于fscanf函数和fprintf函数的读写对象不是键盘和显示器,而是磁盘文件 。
这两个函数的调用格式为:
fscanf(文件指针,格式字符串,输入表列);
fprintf(文件指针,格式字符串,输出表列);
文件定位
移动文件内部位置指针的函数主要有两个,即rewind函数和fseek函数 。
rewind函数前面已多次使用过 , 其调用形式为:
rewind(文件指针);
它的功能是把文件内部的位置指针移到文件首 。
下面主要介绍fseek函数 。fseek函数用来移动文件内部位置指针,其调用形式为:
fseek(文件指针,位移量,起始点);
其中:
“文件指针”指向被移动的文件 。
“位移量”表示移动的字节数,要求位移量是long型数据 , 以便在文件长度大于64KB时不会出错 。当用常量表示位移量时,要求加后缀“L” 。
“起始点”表示从何处开始计算位移量 , 规定的起始点有三种:文件首,当前位置和文件尾 。其表示方法如下表 。
c语言操作文本的基本使用方法1
起始点表示符号数字表示
文件首SEEK_SET0
当前位置SEEK_CUR1
文件末尾SEEK_END2
例如:
fseek(fp,100L,0);
其意义是把位置指针移到离文件首100个字节处 。
还要说明的是fseek函数一般用于二进制文件 。在文本文件中由于要进行转换,故往往计算的位置会出现错误 。
c语言中常用的文件检测函数有以下几个 。
文件结束检测函数feof函数
调用格式:
feof(文件指针);
功能:判断文件是否处于文件结束位置,如文件结束,则返回值为1,否则为0 。
读写文件出错检测函数
ferror函数调用格式:
ferror(文件指针);
功能:检查文件在用各种输入输出函数进行读写时是否出错 。如ferror返回值为0表示未出错 , 否则表示有错 。
文件出错标志和文件结束标志置0函数
clearerr函数调用格式:
clearerr(文件指针);
功能:本函数用于清除出错标志和文件结束标志,使它们为0值 。
【c语言中ferror函数 c语言feof函数】c语言中ferror函数的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于c语言feof函数、c语言中ferror函数的信息别忘了在本站进行查找喔 。

    推荐阅读