在c語言中,用getchar()讀取檔案檢測到檔案結尾時將返回乙個特殊的值,即eof(end of file),scanf()函式檢測到檔案結尾時也返回eof(eof定義在stdio.**件)。
#includeint main(void)
不用定義eof,因為stdio.h中已經定義過了。
不用擔心eof的實際值,因為eof在stdio.h中用#define預處理指令定義了,可直接使用。
變數ch型別寫成int,是因為char型別的變數只能表示0~255的無符號整數,eof的值是-1。並且getchar()函式實際返回值的型別是int,所以可以讀取eof。
ch是整數不會影響putchar(),因為字元是以ascii碼儲存。
結束時輸入eof和-1(-1會表示成連字元和乙個數字1)並不能結束檔案,需要根據當前系統要求,windows中用ctrl+z來表示結尾訊號。
/*執行結果*/
my name is tom //輸入
my name is tom //輸出
eof //輸入
eof //輸出
-1 //輸出
-1 //輸出
^z //在鍵盤按 ctrl + z 來結束
請按任意鍵繼續. . .
C語言中的EOF是什麼?
日期 2011年11月12日 我學習c語言的時候,遇到的乙個問題就是eof。它是end of file的縮寫,表示 文字流 stream 的結尾。這裡的 文字流 可以是檔案 file 也可以是標準輸入 stdin 比如,下面這段 就表示,如果不是檔案結尾,就把檔案的內容複製到螢幕上。int c wh...
C語言中EOF什麼意思
首先看一下eof的官方解釋 計算機術語,縮寫通常為eof end of file 在作業系統中表示資料來源無更多的資料可讀取。資料來源通常稱為檔案或串流。在c語言中,或更精確地說成c標準函式庫中表示檔案結束符 end of file 在while迴圈中以eof作為檔案結束標誌,這種以eof作為檔案結...
C語言中的EOF
在c語言中,或更精確地說成c標準函式庫中表示檔案結束符 end of file 在while迴圈中以eof作為檔案結束標誌,這種以eof作為檔案結束標誌的檔案,必須是文字檔案。在文字檔案中,資料都是以字元的ascii 值的形式存放。我們知道,ascii 值的範圍是0 127,不可能出現 1,因此可以...