#include <iostream>
int main( )
{
using namespace std;
cout << cin.rdbuf()->in_avail() << endl;
cin.putback(1);
cin.putback(1);
cout << cin.rdbuf()->in_avail() << endl;
return 0;
} //compile by g++-4.8.1
我认为这将输出 0 和 2
但是当我运行代码时,它输出0和0,为什么?
或者如果我改变 cin.putback(1); 到int a;辛 >> 一; 输入 12 12;
它仍然输出 0 和 0