C語言 庫函數(shù) clearerr()
C語言 庫函數(shù) clearerr()
C 庫函數(shù) void clearerr(FILE *stream) 清除給定流 stream 的文件結束和錯誤標識符。
1. 聲明
下面是 clearerr() 函數(shù)的聲明。
void clearerr(FILE *stream)
2. 參數(shù)
- stream -- 這是指向 FILE 對象的指針,該 FILE 對象標識了流。
3. 返回值
這不會失敗,且不會設置外部變量 errno,但是如果它檢測到它的參數(shù)不是一個有效的流,則返回 -1,并設置 errno 為 EBADF。
4. 實例
下面的實例演示了 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 時發(fā)生錯誤\n");
}
clearerr(fp);
if( ferror(fp) )
{
printf("讀取文件:file.txt 時發(fā)生錯誤\n");
}
fclose(fp);
return(0);
}
假設我們有一個文本文件 file.txt,它是一個空文件。讓我們編譯并運行上面的程序,因為我們試圖讀取一個以只寫模式打開的文件,這將產生以下結果。
讀取文件:file.txt 時發(fā)生錯誤

C語言 標準庫 - <stdio.h>
