我有這樣的代碼不能得到EOF退出do while循環,在使用getchar()
空格是一個int類型,所以我可以使用getchar函數
do
{
...code...
whitespaces=getchar();}
while (whitespaces != (EOF) || whitespaces!='\n');
但它不退出當我打CTRL + Z循環(我正在使用Windows 7)
我做錯了什麼?
編輯:謝謝你,你們所有人......!非常有幫助
我有這樣的代碼不能得到EOF退出do while循環,在使用getchar()
空格是一個int類型,所以我可以使用getchar函數
do
{
...code...
whitespaces=getchar();}
while (whitespaces != (EOF) || whitespaces!='\n');
但它不退出當我打CTRL + Z循環(我正在使用Windows 7)
我做錯了什麼?
編輯:謝謝你,你們所有人......!非常有幫助
嘗試將||
更改爲&&
。現在,如果whitespaces
等於EOF
,它不是換行符,所以while條件始終爲真。這大概不是你想要的。
你的條件是不正確:
while (whitespaces != (EOF) && whitespaces!='\n');
一個\ n將自動比EOF不同,反之亦然。
哦,我的得到了......我明白了!謝謝!! – YNWA 2012-04-17 19:59:13