我有一個問題,能夠處理運行時錯誤,其中用戶輸入的數據不同於預期的數據。例如,一個整數是預期的,但(可能)用戶輸入一個字符串。在我的控制檯程序中,發生這種情況時,我只是在屏幕上打印了大量垃圾,它進入了無限循環。我該如何處理這個問題,以便在發生這種情況時顯示一條錯誤消息,而不是整個程序都會出現垃圾?如何在C++中捕獲運行時錯誤?
int x = 0;
cout << "\n\nEnter a number(1-9): ";
cin >> x;
if(x<1 || x>9)
{
cout<<"\nThe place you entered is invalid. Please enter the correct place number";
}else{
cout<<"Correct";
}
如果我進入上述大於2^31(我知道其爲int數據類型的最大值)或它進入一個無限循環char值的數字。我怎樣才能搭上解決這個problme
這是一個重複的:http://stackoverflow.com/questions/545907/what-is-the-best-way-to-do-input-validation-in-c-with-cin – 2012-03-31 18:33:49