gpt4 book ai didi

c++ - 在 C++ 中清除 cin

转载 作者:塔克拉玛干 更新时间:2023-11-03 02:11:56 26 4
gpt4 key购买 nike

<分区>

Possible Duplicate:
Why is this cin reading jammed?

我重载了 istream 运算符 (istream &operator>>...) 并且它采用以下格式的点:

(<x-coordinate>,<y-coordinate>)

我想对此进行多次 (10) 次测试,所以写了:

for (int i = 0; i < 10; i++)  {
cin >> a;
if (!cin.fail()) { cout << a << endl; }
else { cout << "Invalid input!" << endl; cin.clear(); }
}

编辑:

我现在有以下代码:

for (int i = 0; i < 10; i++)  {
cin >> a;
if (!cin.fail()) { cout << a << endl; }
else {
cout << "Invalid input!" << endl; cin.clear();
while (!cin.eof()) { cin.ignore(); } cin.ignore();
}
}

忽略是由 Cthulhu 建议的。然而,问题是 cin 仍然输出“无效输入!”运行完上面的代码后:

(3,3) <-- input
(3,3) <-- output
Invalid output! <-- second output

有什么方法可以清除 cin 中的内容吗?

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com