【发布时间】:2012-04-15 01:15:54
【问题描述】:
我无法处理运行时错误,即用户键入的数据与预期不同。例如,需要一个整数,但(可能)用户输入了一个字符串。在我的控制台程序中,当这种情况发生时,我的屏幕上会打印出一大堆垃圾,它会进入无限循环。我该如何解决这个问题,以便在发生这种情况时显示错误消息,而不是整个程序都被丢弃?
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 值,它将进入无限循环。我该如何解决这个问题
【问题讨论】: