Почему in_avail () выдает ноль, даже если в потоке есть символ?
#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); к инт; cin >> a; с входом 12 12;
он по-прежнему выводит 0 и 0