[問題] getchar()的使用

看板C_and_CPP作者 (美不勝收)時間13年前 (2012/09/05 22:36), 編輯推噓0(007)
留言7則, 4人參與, 最新討論串1/2 (看更多)
各位大大 大家好 想請問一下 我在使用getchar() 這個function #include<stdio.h> 1 main() 2 { 3 double nc; 4 for(nc=0; getchar()!= EOF;++nc) 5 { 6 printf("HI"); 7 } 8 printf("HELLO"); 9 10 } 我看執行的結果 發現執行只有到第7行,"}" 後面的舊都沒有繼續執行下去了 怎麼會這樣? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 114.42.9.106

09/05 22:45, , 1F
如果你是用windows,那你可能要輸入ctrl+z來表示EOF
09/05 22:45, 1F

09/05 23:10, , 2F
喔喔 那請問為甚麼按下enter就會印出一次HI?
09/05 23:10, 2F

09/05 23:20, , 3F
你的程式會卡在 getchar(),直到任何鍵被按下,就會跑一
09/05 23:20, 3F

09/05 23:21, , 4F
次迴圈,然後又卡在getchar()等下一個按鍵
09/05 23:21, 4F

09/05 23:28, , 5F
所有的輸入指令應該都是在Enter按下後開始讀取的...
09/05 23:28, 5F

09/05 23:31, , 6F
樓上才是對的,不是任何鍵,而是Enter才對
09/05 23:31, 6F

09/06 09:56, , 7F
getch()才是任意鍵
09/06 09:56, 7F
文章代碼(AID): #1GHsDJYx (C_and_CPP)
文章代碼(AID): #1GHsDJYx (C_and_CPP)