【发布时间】:2015-10-01 19:50:31
【问题描述】:
我正在尝试读取单个字符多次。问题是我需要防止用户错误。比如:
char arr[10];
for(int i = 0; i < 10; i++)
{
cin.get(arr[i]);
}
输入应该类似于a, b, c, d, ...。但是,如果有人要输入ab 作为第一个条目,我想捕获a,然后忽略b。我知道cin.ignore,但是我不知道如何忽略任意数量的字母数字字符或符号,因为我想忽略可能无限数量的字符,然后停止忽略并再次阅读。
我怎样才能忽略任意数量的字符然后停止忽略 或 我怎样才能真正为 cin 刷新缓冲区。
【问题讨论】:
-
这听起来不是很像How do I flush the cin buffer? 吗?
-
@BoPersson 引用了
cin.ignore的使用 -
您可能误解了来自
cin的输入是如何工作的。您如何区分用户输入了 2 个符号而不是 1 个?