У меня проблема с возможностью исправления ошибок во время выполнения, когда пользователь вводит данные, отличные от ожидаемых. Например, ожидается целое число, но (возможно) пользователь вводит строку. В моих консольных программах, когда это происходит, я просто печатаю много мусора на моем экране, и он заходит в бесконечный цикл. Как я могу позаботиться об этом, чтобы в этом случае отображалось сообщение об ошибке, а не вся программа, отправляющаяся в мусорную корзину?
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, оно входит в бесконечный цикл. Как я могу поймать решить эту проблему