1樓:閃從霜蓋吉
eof是c語言裡面的一個巨集,它的值為-1
而scanf()函式出錯時返回-1
因此,當輸入有錯誤時退出迴圈
2樓:匿名使用者
c語言標準庫中的eof 是巨集常數,其定義是:
#define eof (-1)
程式中凡寫eof處,將用 (-1) 替代,替代後再編譯。
while((c=getchar())!=eof) 就是 while((c=getchar())!=(-1))
------
當讀語句(例如 fscanf) ,讀到檔案尾時,就會獲得eof,eof又叫檔案結束符。
讀語句(例如getchar),遇到鍵盤輸入ctrl+z 時也能 獲得eof。
3樓:念存仉雅霜
eof就是一個檔案結尾的巨集定義
比如while迴圈的條件是==eof,那麼如果一直沒有碰到檔案結尾,那麼就是死迴圈。
它就是一個巨集定義,一個檔案結束標誌。
可以不嚴謹的等同於字串結尾的「\0」(只是便於理解,其實不一樣)
4樓:育知同創教育
eof是end of file的縮寫,表示"文字流"(stream)的結尾。這裡的"文字流",可以是檔案(file),也可以是標準輸入(stdin)。
eof不是特殊字元,而是一個定義在標頭檔案stdio.h的常量,一般等於-1。
#define eof (-1)
除了表示檔案結尾,eof還可以表示標準輸入的結尾。但是,標準輸入與檔案不一樣,無法事先知道輸入的長度,必須手動輸入一個字元,表示到達eof。
5樓:肥蕤鬱良朋
eod是end
offile的縮寫
「!=eof」
表示檔案還沒有結束「=eof」
表示到檔案末尾了。
你在用函式讀入檔案資料的時候,函式總會返回一個狀態,是讀取成功還是失敗,那麼這個狀態怎麼表示呢,所以就約定俗成定義一個識別符號表示這個狀態,就有了eof
c語言中的eof是什麼意思
6樓:小天學長
eof為end of file的縮寫,在作業系統中表示資料源無更多的資料可讀取。
do while not eof(1)解釋:判斷當eof(1)的值為true時停止do迴圈。
使用eof是為了避免因試圖在檔案結尾處進行輸入而產生的錯誤。
直到到達檔案的結尾,eof函式都返回false。對於為訪問random或binary而開啟的檔案,直到最後一次執行的get語句無法讀出完整的記錄時,eof都返回false。
擴充套件資料:
eof(filenumber):必要的filenumber引數是一個integer,包含任何有效的檔案號
eof 指示當前記錄位置位於 recordset 物件的最後一個記錄之後。
bof 指示當前記錄位置位於 recordset 物件的第一個記錄之前。
eof一般是指結尾,比如:sql 中指標到最後一個 rs.eof = true 時,eof是判斷sql取出來的記錄是否到末尾了;而bof是判斷是不是在記錄最前面。
7樓:尋平陽
在計算機術語縮寫通常為 eof,在作業系統決定資料源無更多的資料可讀取。資料源通常稱為檔案或串流。 在 c語言,或更精確地說成 c標準函式庫,檔案存取或其它 i/o 功能可能傳回等於象徵符號值 (巨集) eof 指示檔案結束的情形發生。
實際上 eof 的值通常為 -1,但它依系統有所不同。巨集 eof 會在編譯原始碼前實際值給前處理器。 c語言中,eof常被作為檔案結束的標誌。
還有很多檔案處理函式處錯誤後的返回值也是eof,因此常被用來判斷呼叫一個函式是否成功。 例如: #include int main() return 0; }
8樓:牽國英酈巳
全文結束就是文字的結束,』\0'是字串結尾字元,在螢幕上敲的話,linux下輸入ctrl+d,windows下輸入ctrl+z,os下輸入f4,就能輸入eof。
兩個while語句,前面一個判斷讀取字元是否為eof,後面一個判斷讀取字元是否為換行字元。如果敲回車的話,沒有eof,只有\r,\r是回車符。
9樓:脫彭偶明知
」檔案結束指標」end
offile
(eof
)指讀取資料庫存放到記錄集的結束指標
還有檔案開始指標
beginning
offile
(bof)
當eof和bof的值相等時
說明取出的資料為空
否則就是存在資料
10樓:繆卓俊
c=getchar()!=eof語句的執行順序是1、temp=(getchar()!=eof);
2、c=temp;
所以,當你的輸入不為eof時,c始終為1。
這裡的eof為檔案結束符,對於它的巨集定義位於stdio.h標頭檔案中,如果你去看的話會發現
#define eof -1
11樓:岔路程式緣
首先,eof()是一個函式,所以它有函式值,它的函式值有兩個true和false。它的()裡的1就是引數。
它的含義是:讀取檔案的指標指到檔案尾時,它的值就是true。還沒有讀到檔案尾時,它的值為false。
括號裡的引數是它判斷的檔案的檔案號。
這個函式使用的範圍太有限了!平時做計算用不到它,只在讀取順序檔案時才用的到。
do while not eof(1)解釋:
判斷當eof(1)的值為true時停止do迴圈。
——這一語句經常用到順序檔案的讀取中。
12樓:匿名使用者
檔案結尾 不過先要用open方法 開啟檔案 1是開啟檔案** 如開啟多個檔案 1就是第1個檔案 意思就是按行讀到 讀取到檔案最後一行時退出迴圈
do while not eof(1)
……'中間是要執行的**
loop
13樓:匿名使用者
end of file
迴圈 當前讀取處當不是(1號)檔案結尾的時候do while not eof(1) = do until eof(1) 迴圈 直到1號檔案結束
open ***** as #5
do while not eof(5) = do until eof(5)
14樓:匿名使用者
eof函式當達到檔案尾時返回真,沒到檔案尾時當然是返回假了
那個就是說沒達到檔案尾時一直迴圈!
15樓:夢裡尋你我他
end of file
檔案尾的意思
16樓:匿名使用者
c=getchar()!=eof (c=getchar())!=eof
c語言中eof是什麼意思?
17樓:藍瑟一身
首先這個代
抄碼scanf能寫while裡是因為scanf(「%d%d」)!=eof本身是個邏輯判斷,也就是真或者假,所以可以作為條件判斷寫到while裡,也就是說eof就是個數字,被定義為-1而已。
在我們進行包括scanf等的輸入函式使用時,其實使用者在cmd中的輸入實際是存放於緩衝區當中,當使用者鍵入回車那一瞬間,之前輸入的資料才會被存進去,而這裡無論是單個字元還是字串,scanf的返回值呢是表示成功接受到的物件的個數。
那這裡如果遇到特殊情況,比如緩衝區檔案流滿等問題,那麼scanf將會被返回-1,這裡不光是scanf,返回值為個數的函式,遇到檔案流滿大多都會返回-1,所以這個-1用的比較多,那麼stdio.h就索性專門定義一個巨集來表示,取endoffile(檔案末尾的意思)的前三個字母即組成eof,所以也就有了#defineeof(-1)這樣的話。
c語言與c語言有什麼區別,C 語言到底是什麼,它與C語言有什麼區別?
c 是物件導向的跟易學,而且物件導向是目前的主流,c語言目前主要用在一些底層的互動上面 c 不用指標,而c在編寫較為複雜的程式時需要使用指標,比較麻煩.c 語言到底是什麼,它與c語言有什麼區別?c 是微軟公司在2000年6月釋出的一種物件導向的程式語言。它使得程式設計師可以快速地編寫各種基於micr...
C語言Ctrl z是EOF麼,C語言Ctrl z是EOF麼?
dos下eof就是ctrl z或者f6,根據作業系統可能不同為ctrl d c 都是強制結束標準輸入流 酒篤 windows系統中一般採用阻塞式檢查 ctrl z unix linux系統下一般採用非阻塞式的檢查 ctrl d。因為是在windows系統下,因此使用阻塞式的 ctrl z 來標識流的...
c語言中temp是什麼,C語言中temp是什麼
temp 是自己定義的。常常定義為起臨時作用的變數。比如有a,b兩個變數,現在交換他們的值,就再定義個temptemp a a bb temp 這樣就實現了交換兩個值。 一般只是用來定義區域性變數的,由於臨時使用,所以名字取的有點隨意. 天雲一號 在c語言中,temp沒有特別的含義,既不是關鍵字也不...