没有C ++ 11的最简单的方法是什么,它会提示用户输入一个整数,如果它们没有输入整数,会给它们一个错误信息并重新提示它们?
这是我尝试过的:
int number;
cin >> number;
while(!cin){
cin.clear();
cin >> number;
}
答案 0 :(得分:1)
这是一种方法,我从底部的链接复制。有多种方法可以做到这一点,包括如果你愿意的话,以字符形式读取数字。但是这个应该解决你的困境。
#include <iostream>
#include <cmath>
int main()
{
double teger;
int teger2;
do
{
std::cout << "enter an int" << std::endl;
std::cin >> teger;
std::cin.ignore();
std::cin.clear();
std::cout << "you entered: " << teger << std::endl;
teger2 = teger;
std::cout << "the int of that is: " << teger2 << std::endl;
std::cout << std::endl;
if (teger != teger2) std::cout << "Sorry, that isn't an int, try again." << std::endl;
std::cout << std::endl;
} while (teger != teger2);
std::cout << "congrats, you passed the int test" << std::endl;
return 0;
}
您可以阅读以下讨论以获取更多示例: