0
我在C++中创建了一个简单的控制台应用程序,其中包含一个将两个整数作为输入的while循环。但是如果我输入一个不是整数的字符,比如“a”,循环变得无限。我该如何阻止?如何让C++忽略不正确的输入?
我的代码应该在炭值的输入终止“|”但它需要整数作为输入,我不知道如何解决这个问题。
到目前为止我的代码(试图结束于char值的输入回路 '|'):
int main()
{
int x = 0;
int y = 0;
char c = {x};
char d = {y};
while (c != '|')
{
cin >> x >> y;
// later I will do stuff with x and y
}
system("pause");
return 0;
}
的[检查输入值的整数可能的复制(HTTP ://stackoverflow.com/questions/18728754/checking-input-value-is-an-integer) – Default
这个答案应该是有帮助的:https://stackoverflow.com/questions/26285232/validating-input – Galik
另外这一个: https://stackoverflow.com/questions/33037415/validating-input-with -cin – Galik