ferror() - C庫函式


C庫函式 int ferror(FILE *stream)測試給定的流中的錯誤標記。

宣告

以下是宣告ferror() 函式。

int ferror(FILE *stream)

引數

  • stream -- 這是一個檔案 FILE 物件的標識流的指標。

返回值

如果錯誤指示燈與流關聯的設定,函式返回一個非零值,否則,它返回一個零值。

例子

下面的例子演示了如何使用 ferror()函式。 

#include <stdio.h>

int main()
{
   FILE *fp;
   char c;

   fp = fopen("file.txt", "w");

   c = fgetc(fp);
   if( ferror(fp) )
   {
      printf("Error in reading from file : file.txt
");
   }
   clearerr(fp);
   if( ferror(fp) )
   {
      printf("Error in reading from file : file.txt
");
   }
   fclose(fp);

   return(0);
}

假設我們有一個文字檔案file.txt,這是一個空檔案。讓我們編譯和執行上面的程式,這將產生以下結果,因為我們嘗試讀取一個檔案,以只寫模式執行。

Error reading from file "file.txt"