我正在尝试编写一个控制台程序,该程序从输入中获取一个数字并将其放入数组中。读取持续时间取决于用户是否按下“空格”按钮。我尝试了几种方法,但是我的程序无法将输入与“空格”的ASCII代码进行比较。提前致谢!
#include <iostream>
using namespace std;
int main()
{
int fabcd[25],number_of_items = 0;
cout << "The read in loop lasts while you don't hit space:\n";
while((char)cin.get() != 32)
{
cin >> fabcd[number_of_items];
number_of_items++;
}
return 0;
}
char a=cin.get();
然后fabcd[number_of_items]=a
。 - kwjsksai>>
。如果他想读取数字,则int a = std::cin.get();
是正确的解决方案。在测试文件结束之前,将std::cin::get()
的结果分配给char
是 永远不正确 的做法。 - James Kanze