我新的C++和一些錯誤發生的事情,爲什麼INT返回0 - C++
基本上,我已經宣佈了一個名爲number
變量,它是int
類型。
如果我輸入一個字符串,如a
或x...
然後數目變得0
。我不希望號碼變成0
,而是希望它被錯誤處理。
如何防止這是C++? ,這是我的源代碼...
#include <iostream>
using namespace std;
int number;
int main() {
cout << "Please input a number: ";
cin >> number;
cout << number << endl;
return 0;
}
'if(!cin >> number)' – Borgleader 2014-11-20 20:48:46
@CaptainObvlious不,它是C++ 11的行爲,[請參閱我的問題](http://stackoverflow.com/questions/19522504/istream-行爲改變失敗) – Borgleader 2014-11-20 20:49:23
你可以使用['cin.exceptions'](http://en.cppreference.com/w/cpp/io/basic_ios/exceptions)使其發生錯誤。仍然將它歸零... – Deduplicator 2014-11-20 20:51:09