请教关于输入异常的问题
int order = -1;while(order < 0 || order > 5) {/*想读入一个1-5之间的值,但如果输入字符传就会死循环;如下处理只能退出系统,能不能让程序能继续正常运行??*/
cout << "\n\t\t\t 请选择操作代码:";
cin >> order;
if(cin.fail()) {
exit(0);
}
}
百度的是把order改成char类型,但是我想问下还有没其他方法??
2017-01-02 13:44
2017-01-02 13:51

2017-01-02 15:21
2017-01-02 20:39
程序代码:#include <iostream>
using namespace std;
int main( void )
{
int order;
while( !(cin>>order) )
{
cin.clear();
cin.ignore( 1 );
}
cout << order << endl;
}
2017-01-03 08:34