
Pre-defined stream
Controls input from a stream buffer associated with the object stdin declared in <cstdio>.
None
#include <iostream> extern istream cin; istream cin;
The object cin controls input from a stream buffer associated with the object stdin declared in <cstdio>. By default, the standard C and C++ streams are synchronized, but you can improve performance by using the ios_base member function synch_with_stdio to desynchronize them.
After the object cin is initialized, cin.tie() returns &cout, which implies that cin and cout are synchronized.
//
// cin example #1
//
#include <iostream>
void main ( )
{
using namespace std;
int i;
float f;
char c;
//read an integer, a float and a character from stdin
cin >> i >> f >> c;
// output i, f and c to stdout
cout << i << endl << f << endl << c << endl;
}
//
// cin example #2
//
#include <iostream>
void main ( )
{
using namespace std;
char p[50];
// remove all the white spaces
cin >> ws;
// read characters from stdin until a newline
// or 49 characters have been read
cin.getline(p,50);
// output the result to stdout
cout << p;
}
When inputting " Grendel the monster" (newline) in the previous test, the output is "Grendel the monster". The manipulator ws removes spaces.
basic_istream(3C++), iostream(3C++), basic_filebuf(3C++), cout(3C++), cerr(3C++), clog(3C++), wcin(3C++), wcout(3C++), wcerr(3C++), wclog(3C++), ios_base(3C++), basic_ios(3C++)
Working Paper for Draft Proposed International Standard for Information Systems--Programming Language C++, Section 27.3.1
ANSI X3J16/ISO WG21 Joint C++ Committee