【发布时间】:2011-08-14 05:21:29
【问题描述】:
我制作了很多简单的控制台 C++ 应用程序,我面临的一个问题是输入缓冲区。我尝试过 cin.ignore 和 flush(),但它们似乎对我不起作用。
如果我有如下代码:
cin >> char1;
cin >> char2;
然后我按下:1(空格)2(回车),只需一次回车,1 存储到 char1,2 存储到 char2。
对不起,如果我对我的要求有点模糊。如果人们不明白,我会尝试编辑这个问题。
【问题讨论】:
-
您希望存储
1而忽略2(和空格)吗? -
是的。我希望空格和 2 被忽略,因为它将数据存储到 char
-
@Ajay:你可以尝试输入字符串,然后只去掉第一个字符。
-
我可以使用 string.at(#),但是整数和其他变量会变得混乱。不过感谢您的建议。
-
其实我只是测试了一下,字符串以空格字符结尾,所以不起作用