今天写C++小程序(Console),想到了鲁棒性(虽然实际上完全可以不考虑):我要求用户输入的是整形变量,如果用户输入字符如“abcd”,那程序将崩溃,直接跳出。想过用string,但感觉过于麻烦,网上搜寻后,找到下面的示例代码:
#include<iostream>
using namespace std;
void main()
{
int test;
bool b_=1;
while(b_){
cin>>test;
if(cin.fail()){
cerr<<"stream failed!!"<<endl;
cin.clear(istream::goodbit);
cin.sync();
continue;
}
if(test == 2)
b_=0;
}
}
用了后,非常不错,如果有需要对用户输入进行判断的,可以参考一下这段程序。