clearerr()函数用于复位错误标志。
clearerr()函数 语法
void clearerr(FILE*p);
参数p为指向流中文件结束标志和错误标志。
clearerr()函数没有返回值。
clearerr()函数 示例
本示例使用clearerr函数将p指向的文件流所用的错误标志清除,使文件顺利执行。其具体代码如下所示:
#include<stdio.h>
int main(void)
{
FILE*p;
char ch;
p=fopen("DUMMY.FIL","w");/*以写的方式打开文件*/
ch=fgetc(p);/*试图读取流强行地产生一个错误*/
printf("%c ",ch);
if(ferror(p))
{
printf("Error reading from DUMMY.FIL ");/*输出错误信息*/
clearerr(p);/*复位错误指针*/
}
fclose(p);/*关闭文件*/
return 0;
}
运行结果如图所示。