C 語(yǔ)言基礎(chǔ)教程

C 語(yǔ)言流程控制

C 語(yǔ)言函數(shù)

C 語(yǔ)言數(shù)組

C 語(yǔ)言指針

C 語(yǔ)言字符串

C 語(yǔ)言結(jié)構(gòu)體

C 語(yǔ)言文件

C 其他

C 語(yǔ)言參考手冊(cè)

C 庫(kù)函數(shù) clearerr() 使用方法及示例

C 標(biāo)準(zhǔn)庫(kù) - <stdio.h>

C 庫(kù)函數(shù) void clearerr(FILE *stream) 清除給定流 stream 的文件結(jié)束和錯(cuò)誤標(biāo)識(shí)符。

聲明

下面是 clearerr() 函數(shù)的聲明。

void clearerr(FILE *stream)

參數(shù)

  • stream  -- 這是指向 FILE 對(duì)象的指針,該 FILE 對(duì)象標(biāo)識(shí)了流。

返回值

這不會(huì)失敗,且不會(huì)設(shè)置外部變量 errno,但是如果它檢測(cè)到它的參數(shù)不是一個(gè)有效的流,則返回 -1,并設(shè)置 errno 為 EBADF。

在線示例

下面的示例演示了 clearerr() 函數(shù)的用法。

#include <stdio.h>
int main()
{
   FILE *fp;
   char c;
   fp = fopen("file.txt", "w");
   c = fgetc(fp);
   if( ferror(fp) )
   {
      printf("讀取文件:file.txt 時(shí)發(fā)生錯(cuò)誤\n");
   }
   clearerr(fp);
   if( ferror(fp) )
   {
      printf("讀取文件:file.txt 時(shí)發(fā)生錯(cuò)誤\n");
   }
   fclose(fp);
   return(0);
}

假設(shè)我們有一個(gè)文本文件 file.txt,它是一個(gè)空文件。讓我們編譯并運(yùn)行上面的程序,因?yàn)槲覀冊(cè)噲D讀取一個(gè)以只寫模式打開的文件,這將產(chǎn)生以下結(jié)果。

讀取文件:file.txt 時(shí)發(fā)生錯(cuò)誤

C 標(biāo)準(zhǔn)庫(kù) - <stdio.h>

丰满人妻一级特黄a大片,午夜无码免费福利一级,欧美亚洲精品在线,国产婷婷成人久久Av免费高清