1樓:匿名使用者
getchar()!=eof用來判斷是否已經讀取完。
eof 是-1 即讀入的已不是正常的字元而是檔案的結束符;
當輸入字串的時候,可以使用getchar()讀取其中的每一個字元,輸入字串的時候最後一般輸入一個回車,回車以後輸入快取裡面就沒有資料了。
只能使用while(getchar()!='\n')也就是讀到回車就退出,否則會一直等待使用者的輸入
ctrl+c是停止迴圈,結束程式。
2樓:寶若谷郎雨
當我們輸入字串的時候,可以使用getchar()讀取其中的每一個字元,getchar()!=eof用來判斷是否已經讀取完。我們輸入字串的時候最後一般輸入一個回車,回車以後輸入快取裡面就沒有資料了。
只能使用while(getchar()!='\n')也就是讀到回車就退出,否則會一直等待使用者的輸入
ctrl+c是停止迴圈,結束程式
3樓:小傻
該getchar()!=eof用來判斷是否已經讀取完,是在c語言當中使用的:
eof 是-1 即讀入的已不是正常的字元而是檔案的結束符;
當輸入字串的時候,可以使用getchar()讀取其中的每一個字元,輸入字串的時候最後一般輸入一個回車,回車以後輸入快取裡面就沒有資料了。
只能使用while(getchar()!='\n')也就是讀到回車就退出,否則會一直等待使用者的輸入
ctrl+c是停止迴圈,結束程式。
4樓:海竹漢羅
就是獲取到的字元不等於-1的意思。
解釋:1)getchar是一個函式,用於從鍵盤獲取一個字元;
2)eof是一個巨集,值是-1,用於表示文字檔案的結束;
3)通常應該是
(ch=fgetc())!=eof
也就是從檔案讀取資料不是檔案結束;
4)但是如果使用了重定向結束,把鍵盤輸入重定向到檔案,也會出現getchar()
!=eof的寫法。
5樓:
eof 是 -1 即讀入的已不是正常的字元而是檔案的結束符;
\t的意思水平製表跳到下一個tab的位置
6樓:帖誠鄢韞玉
判斷輸入的字元是不是檔案結尾
如果是鍵盤的話就是ctrl+z
c語言中while ((c = getchar()) != eof)在這裡為什麼是輸入回車就有輸出了
7樓:
ctrl+z是產生eof,也就是你程式結束迴圈的標誌但是沒有ctrl+z並不影響迴圈中**的執行呀你如果只按回車專,就會一行字元發屬送到緩衝區,然後被getchar一個個在迴圈中讀取、輸出
直到這一行的最後一個字元讀完,程式會等待下一串字元來到緩衝區只到來到緩衝區的字元中包含ctrl+z,迴圈終止懂?
8樓:
回車鍵不會返回eof訊息 ,回車的ascii**16進位制是「0x0d」 10進位制是「13」 在某些語言中可以用『\r』表示,所以程式在while裡面判斷出條件是成立的 當然往下面執行了
9樓:匿名使用者
看這個。
int c = 0;給個初始版值權
原來c != eof和((c=getchar())!=eof是不一樣的啊
10樓:雷霆戰機
條件判斷邏輯不一樣執行自然不一樣,
int c;
c = getchar();
while( c != eof)
putchar(c);
首先看這個 eof是-1的意思 你是用的getchar()比如我們輸入一個 (a) 那麼int c得到的就是97 為什麼是97
應為你是獲取一個字元 根據ascii碼錶對應 a的十進位制就是97 接下來我們才看看迴圈條件
條件是 a != eof 我剛剛說了eof代表的是-1 (為什麼是-1?這是c用來判斷檔案指標是否執行到末尾的一個結束標誌 可以右鍵檢視eof 的巨集定義 = #define eof (-1))很明顯了
c 現在 = (a)97 != eof(-1) c = 91 eof = -1 確實是不等於 那麼條件成立
輸出後在繼續判斷 c!=eof c還是97並沒有改變 還是不等於 就造成了死迴圈
那麼在看第二個**
int c;
while((c=getchar())!=eof)
putchar(c);
這裡還是一樣 輸入一個a c = (a)97; 那麼在判斷條件 而c是(a)97 肯定不等於eof(-1) 那麼新增成立 執行輸出a
關鍵點事第二次迴圈了 輸出後又會再次執行條件判斷 一看條件是getchar 那麼先執行getchar這個c函式 等待輸入後
在判斷c 是不是不等於eof
所以這個的效果是 沒輸入一個字元 輸出 後在等待輸入一個再發 在輸出 一直迴圈直到遇見eof
11樓:物理公司的
第一個你只有1個getchar,只接受一次輸入,然後就死迴圈了
第二個是你每getchar一次就判斷一次,結束了就退出
當然不一樣
It serves you right是什麼意思
小獨老師 it serves you right什麼意思?今天的一句話英語告訴你!來學習 素質流氓範 it serves you right的意思是 你活該 你自作自受。含義 用法 表示得到應有的報應。釋義 通常做了壞事之後,得了報應時,會說這樣的話。例句 1.it serves you right...
call or put options是什麼意思
愛藍色的夢 呼叫或選擇 call option和put option的區別 call option是什麼意思 福建中米美集 看漲期權 call option 看漲期權又稱買進期權,買方期權,買權,延買期權,或 敲進 是指期權的購買者擁有在期權合約有效期內按執行 買進一定數量標的物的權利。看漲期權是這...
i miss you i love you是什麼意思
飛櫻 i miss you i love you我想念你,我愛你 雙語對照 例句 1.i miss you i miss you i love you.寶貝我想念你我想念你,我愛你。 我真 我想你我愛你 採納我喲!i miss you i love you是什麼意思 i miss you i lov...