Excel如何設置動態求和 Excel設置動態求和方法
1413
2025-03-31
今天在寫代碼的時候遇到一個bug,也是在無意中發現的,當我亂輸入的時候(亂敲鍵盤那種),程序會出現死循環。
簡版:
int a = 0; while(true) { cout <<"請輸入數字"<< endl; cin>>a; }
1
2
3
4
5
6
看似一段簡單的代碼,當胡亂輸入的時候就會導致程序死循環,無限打印“請輸入數字”。
解決方法如下:
int a; while(cin.fail()) { cout <<"請輸入數字"<< endl; cin >> a; cin.clear(); //cin.clear()作用是清除cin的錯誤狀態 cin.ignore(); //cin.ignore()作用是忽略掉緩沖區的內容,直到遇到EOF為止 }
1
2
3
4
5
6
7
8
網上還有使用cin.fail的。
cin.fail()是判斷cin的狀態的,如果cin為錯誤狀態則返回1,正常狀態則返回0
目前我沒有使用這個,但死循環確實不存在了。
C++
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。