【发布时间】:2021-04-03 22:27:51
【问题描述】:
目标:运行一个 while 循环,该循环将重复,直到用户输入一个介于 1-3(含)之间的整数。所以如果输入小于1或大于3的整数或输入任何字符或字符串,循环重复。
我的菜鸟知识:我知道当用户输入是整数时如何比较用户输入,但当它是字符或字符串数据类型输入时,我得到的只是一个无限循环。另外,我将 inputtable 变量声明为整数,所以不知道该怎么做。
我进行了一些 Google 搜索,但似乎找不到与我的问题相似的问题。
非常感谢您的建议:)
代码如下:
int Decision1 = 4;
while ( Decision1 < 1 || Decision > 3)
{
std::cout << "Enter answer here: ";
std::cin >> Decision1;
std::cout << "\n\n";
}
【问题讨论】:
-
您必须检查
std::cin状态并在失败时清除它(并丢弃错误的字符)。
标签: c++ string while-loop char integer