今天沒事寫了段代碼。
#include
main()
{
int c;
while(c=getchar())!='\n'
putchar(c);
}
這裡只能輸入輸出一次,就退出循環了。
而我這樣寫
將while(c=getchar())!='\n'改為while(c=getchar())!='\0'
這樣就可以多次循環輸入輸出了而我又將上面的改為while(c=getchar())!=EOF
則不能輸出了。
請問這幾個是為什麼?
謝謝!
首位是\n,每次結束輸入都會按Enter,因此循環也就執行一次;而\0是字符串的結束符,而又無法從鍵盤輸入,因此可以無限輸入輸出;
EOF,沒有實驗過用它作輸入結束標志,EOF是ctrl+z,輸入字符之後按Ctrl+z,會產生這個值。
其次,你的循環應該寫錯了,while((c=getchar())!='\n'),再實驗一次試試