feof是一個c語言函式,既可用以判斷二進位制檔案又可用以判斷文字檔案。feof(fp)有兩個返回值:如果遇到檔案結束,函式feof(fp)的值為1,否則為0。EOF是檔案結束標誌的檔案。在文字檔案中,資料是以字元的ASCⅡ程式碼值的形式存放,ASCⅡ程式碼的範圍是0到255,不可能出現-1,因此可以用EOF作為檔案結束標誌。當把資料以二進位制形式存放到檔案中時,就會有-1值的出現,因此不能採用EOF作為二進位制檔案的結束標誌。為解決這一個問題,ASCI C提供一個feof函式,用來判斷檔案是否結束。擴充套件資料:feof的正確寫法:在VC裡,只有當檔案位置指標(fp->_ptr)到了檔案末尾,然後再發生讀/寫操作時,標誌位(fp->_flag)才會被置為含有_IOEOF。然後再呼叫feof(),才會得到檔案結束的資訊。因此,如果執行如下程式:char c;while(!feof(fp)){c = fgetc(fp);printf("%X/n", c); 正確的寫法應該是:
feof是一個c語言函式,既可用以判斷二進位制檔案又可用以判斷文字檔案。feof(fp)有兩個返回值:如果遇到檔案結束,函式feof(fp)的值為1,否則為0。EOF是檔案結束標誌的檔案。在文字檔案中,資料是以字元的ASCⅡ程式碼值的形式存放,ASCⅡ程式碼的範圍是0到255,不可能出現-1,因此可以用EOF作為檔案結束標誌。當把資料以二進位制形式存放到檔案中時,就會有-1值的出現,因此不能採用EOF作為二進位制檔案的結束標誌。為解決這一個問題,ASCI C提供一個feof函式,用來判斷檔案是否結束。擴充套件資料:feof的正確寫法:在VC裡,只有當檔案位置指標(fp->_ptr)到了檔案末尾,然後再發生讀/寫操作時,標誌位(fp->_flag)才會被置為含有_IOEOF。然後再呼叫feof(),才會得到檔案結束的資訊。因此,如果執行如下程式:char c;while(!feof(fp)){c = fgetc(fp);printf("%X/n", c); 正確的寫法應該是: