Home C&C++函数库 c++ 语法 程序源码 Linux C库

clearerr

函数  <cstdio>

void clearerr ( FILE * stream );

清除错误状态指示

重置流的错误和eof指示符。

当i/o函数因错误或文件已到达末尾而失败时,可以为流设置相应的内部指示符。
通过调用这个函数清除这些指示器的状态,或调用:fseek, fsetpos, rewindfreopen任何一个。

☲  参数



stream
指向标识流的FILE对象的指针。

☉  返回值





☣  示例



/* writing errors */
#include <stdio.h>
int main ()
{
  FILE * pFile;
  pFile = fopen("myfile.txt","r");
  if (pFile==NULL) perror ("Error opening file");
  else {
    fputc ('x',pFile);
    if (ferror (pFile)) {
      printf ("Error Writing to myfile.txt\n");
      clearerr (pFile);
    }
    fgetc (pFile);
    if (!ferror (pFile))
      printf ("No errors reading myfile.txt\n");
    fclose (pFile);
  }
  return 0;
}

这个程序打开一个名为myfile.txt的现有文件进行读取, 并在试图写入时导致I/O错误。该错误使用clearerr清除,因此第二次错误检查返回false。

输出:

Error Writing to myfile.txt
No errors reading myfile.txt

🍄  另请参阅



feof 检查文件结束标志符(function )
ferror 检查错误标志器(function )
rewind 将流的位置设置为起始位置(function )

联系我们 免责声明 关于CandCplus 网站地图