ferror ()- 測試讀取/寫入錯誤
格式
#include <stdio.h>
int ferror(FILE *stream);語言層次
ANSI
安全執行緒
是
說明
ferror() 函數測試在讀取或寫入給定的 串流時是否發生錯誤。 如果發生錯誤,則在您關閉 stream、呼叫 rewind() 函數或呼叫 clearerr() 函數之前,仍會設定 串流 的錯誤指示器。
回覆值
ferror() 函數會傳回非零值,以指出給定 串流上的錯誤。 回覆值 0 表示未發生任何錯誤。
範例
此範例將資料輸出至串流,然後檢查是否未發生寫入錯誤。
#include <stdio.h>
int main(void)
{
FILE *stream;
char *string = "Important information";
stream = fopen("mylib/myfile","w");
fprintf(stream, "%s\n", string);
if (ferror(stream))
{
printf("write error\n");
clearerr(stream);
}
if (fclose(stream))
perror("fclose error");
}