【发布时间】:2012-11-25 05:59:25
【问题描述】:
我有这段代码 sn-p 应该测试用户是否输入整数。如果用户输入字母而不是小数,则此方法有效,我想知道为什么会这样。这是我的代码 sn-p:
Student student;
int id;
while(!(cin >> id))
{
cout << "\nERROR: Please enter a Positive Whole Number" << endl;
cin.clear();
cin.ignore ();
cout << "Enter Student ID: ";
}
输入A 将使其遍历while 循环,但如果我输入12.5 它会退出while 循环并继续运行。不是在测试它是否会解析为整数吗?为什么它接受12.5 而不是字符?
【问题讨论】:
标签: c++ parsing object loops cin