Por que in_avail () imprime zero mesmo se o fluxo tiver algum caractere?
#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
Eu acho que isso vai produzir 0 e 2
mas quando eu executo o código, ele gera 0 e 0, por quê?
ou se eu mudar cin.putback (1); int; cin >> a; com entrada 12 12;
ainda sai 0 e 0