Я беру ввод на С++, и я использую VStudio 2013 на Win7. Я пытаюсь избежать неправильного ввода данных из моих меню, и он работает во всех них, кроме этого.
cout << "Please choose your second number" << endl;
cin >> move2;
if (move2 < 1 || move2 > size)
{
cout << "That not a valid move" << endl;
Sleep(2000);
cin.sync();
cin.clear();
}
Единственное различие заключается в том, что в условии move > переменной (size) нет числа. Когда я вхожу в char, он возвращается к вопросу, запрашивая другой ввод, но если я введу слово, оно сломается!
Я пытаюсь использовать cin.ignore(numeric_limits<streamsize>::max(), '\n');
, но компилятор выделяет max()
, и он говорит "ожидающий идентификатор".
Это может быть легко для всех вас хорошими программистами, но я не знаю, как это исправить. Кто-нибудь может мне помочь?