看板 Programming 關於我們 聯絡資訊
雖然這是一個快被討論到爛掉的題目 不過我還是要來問一下XD 主程式部分都已經OK 但是老師和我說要是輸入英文的話 程式就會錯誤 要我回去修改 在參考了精華區裡面的猜數字&cin的特殊用法 修改程式碼後 變成現在可以正確判定是不是正確輸入數字 或者輸入的是英文or英文混雜數字 但是問題來了 確定是數字後 有些數字會無法繼續進行下面的程式碼 讓我非常苦惱 附上cpp檔 http://eric8347.googlepages.com/guess.cpp 請求各位大大了... -- http://eric8347.blogspot.com -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 58.115.22.7
revivalworld:if(!cin.good()) { 清除 buffer } 60.244.216.2 04/20 21:49
eric8347:是在判定完數字/英文後清除buffer這樣嗎 58.115.22.7 04/20 21:58
revivalworld:不是 這樣做是因為 cin 要讀 int 卻 60.244.216.2 04/20 22:01
revivalworld:讀到非數字字元時會變成 error 狀態 60.244.216.2 04/20 22:02
revivalworld:所以用 cin.good() 檢查狀態決定下一 60.244.216.2 04/20 22:02
revivalworld:步該怎麼做 如果錯誤就清除 buffer 60.244.216.2 04/20 22:03
eric8347:清除buffer是cin.clear();這樣嗎? 58.115.22.7 04/20 22:09
pthuang:雖然不太好 不過清空 Buffer 可以用118.169.107.190 04/21 03:31
pthuang:fflush( stdin ); 這個方法118.169.107.190 04/21 03:31