basic_istream::unget

Puts the most recently read character back into the stream.

basic_istream<Elem, Tr>& unget( );

Return Value

The stream (*this).

Remarks

The unformatted input function puts back the previous element in the stream, if possible, as if by calling rdbuf ->sungetc. If rdbuf is a null pointer, or if the call to sungetc returns traits_type::eof, the function calls setstate(badbit). In any case, it returns *this.

For information on how unget might fail, see basic_streambuf::sungetc.

Example

// basic_istream_unget.cpp
// compile with: /EHsc
#include <iostream>
using namespace std;

int main( ) 
{
   char c[10], c2;
   
   cout << "Type 'abc': ";
   c2 = cin.get( );
   cin.unget( );
   cin.getline( &c[0], 9 );
   cout << c << endl;
}
  abc
  abc
Type 'abc': abc
abc

Requirements

Header: <istream>

Namespace: std

See Also

Reference

basic_istream Class

iostream Programming

iostreams Conventions