C 庫函數 - ferror()
描述
C 庫函數 int ferror(FILE *stream) 測試給定流 stream 的錯誤識別字。
聲明
下麵是 ferror() 函數的聲明。
int ferror(FILE *stream)
參數
- stream -- 這是指向 FILE 對象的指針,該 FILE 對象標識了流。
返回值
如果設置了與流關聯的錯誤識別字,該函數返回一個非零值,否則返回一個零值。
實例
下麵的實例演示了 ferror() 函數的用法。
#include <stdio.h> int main() { FILE *fp; char c; fp = fopen("file.txt", "w"); c = fgetc(fp); if( ferror(fp) ) { printf("讀取檔:file.txt 時發生錯誤\n"); } clearerr(fp); if( ferror(fp) ) { printf("讀取檔:file.txt 時發生錯誤\n"); } fclose(fp); return(0); }
假設我們有一個文本檔 file.txt,它是一個空文件。讓我們編譯並運行上面的程式,因為我們試圖讀取一個以只寫模式打開的檔,這將產生以下結果。
讀取檔:file.txt 時發生錯誤