10.5 C语言文件读写的出错检测

01ferror函数


1、C提供一些函数用来检测输入输出函数调用时可能出现的错误。

2、ferror函数

一般形式

ferror(fp),如果ferror返回值为0(假),表示为出错;如果返回一个非零值,表示出错。

3、对同一个文件每一次调用输入输出函数,都会产生一个新的ferror函数值,因此应当在调用一个输入输出函数后立即检查ferror函数的值,否则信息会丢失。

4、在执行fopen函数时,ferror函数的初始值自动置为0。


02clearerr函数


1、clearerr的作用是使文件错误标志和文件结束标志置为0。

2、假设在调用一个输入输出函数时出现错误,ferror函数值为一个非0值。应该立即调用clearerr(fp),使ferror(fp)的值变成0,以便再进行下一次的检测。

3、只要出现文件读写错误标志,它就一直保留,直到对同一文件调用clearerr函数或rewind函数,或任何其他一个输入输出函数。

C语言 | 求100~200的素数​mp.weixin.qq.com图标

文章来源: zhuanlan.zhihu.com,作者:,版权归原作者所有,如需转载,请联系作者。

原文链接:zhuanlan.zhihu.com/p/334308142

(完)