我有以下代码的问题.我在Xcode(OS X)中使用它.
[删除了我对该代码的第一次尝试]
如何输入reset std :: cin?我尝试输入另一个值,但我不能,因为std :: cin似乎在我错误的值之后不再工作了.
UPD2 在我的第二次尝试中,我使用此代码:
for ( unsigned char i = 0; i < 5; i++ ) {
int value = 0;
std::cout << "\n>> Enter \"value\": ";
std::cin >> value;
if ( std::cin.fail() ) {
std::cin.clear();
std::cin.ignore();
std::cout << "Error: It's not integer value!\n";
} else {
std::cout << "The value format is ok!\n";
}
std::cout << "value = " << value << std::endl;
}
Run Code Online (Sandbox Code Playgroud)
这里我只是在一个循环中输入5个值.每次我检查错误.当我设置错误的值("asdf")时,std :: cin变得疯狂并且不再起作用.我得到这个输出:
>> Enter "value": 4
The …Run Code Online (Sandbox Code Playgroud)