为什么cin.sync()不能工作

时间:2017-08-14 03:13:07

标签: c++ io

#include <iostream>
#include <istream>
using namespace std;
int main()
{
    char a = '\0';
    char b = '\0';
    cin.get(a);
    cout << a <<endl;
    cin.sync();
    cin.get(b);
    cout << b <<endl;
    return 0;
}

输入:

sssssssssssssssss\n

结果:

s
s

我期望的正确结果是我可以输入两次,即使我第一次输入很多字符!像这样:

输入:

ssssssssssssssss\n

第一个cout:

s

等我第二次打字:

wwwwwwwwwwwww\n

第二个cout:

w

我想使用cin.sync()清除输入缓冲区,但为什么它不起作用?

0 个答案:

没有答案