Standard C++ Library
Copyright 1998, Rogue Wave Software, Inc.
NAME
wcin
- Controls input from a stream buffer associated with the
object stdin declared in <cstdio>.
SYNOPSIS
#include <iostream>
extern wistream wcin;
wistream wcin;
DESCRIPTION
The object wcin controls input from a stream buffer associ-
ated with the object stdin declared in <cstdio>. By default
the standard C and C++ streams are synchronized, but perfor-
mance improvement can be achieved by using the ios_base
member function synch_with_stdio to desynchronize them.
After the object wcin is initialized, wcin.tie() returns
&wcout, which implies that wcin and wcout are synchronized.
wcin uses the locale codecvt facet to convert the tiny char-
acters extracted from stdin to the wide characters stored in
the wcin buffer.
EXAMPLE
//
// wcin example #1
//
#include <iostream>
void main ( )
{
using namespace std;
int i;
float f;
wchar_t c;
//read an integer, a float and a wide character from stdin
wcin >> i >> f >> c;
// output i, f and c to stdout
wcout << i << endl << f << endl << c << endl;
}
//
// wcin example #2
//
#include <iostream>
void main ( )
{
using namespace std;
wchar_t p[50];
// remove all the white spaces
wcin >> ws;
// read characters from stdin until a newline
// or 49 characters have been read
wcin.getline(p,50);
// output the result to stdout
wcout << p;
}
When inputting " Grendel the monster" (newline) in the pre-
vious test, the output is: "Grendel the monster". The mani-
pulator ws removes spaces.
SEE ALSO
basic_istream(3C++), basic_iostream(3C++),
basic_filebuf(3C++), cin(3C++), cout(3C++), cerr(3C++),
clog(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.2
STANDARDS CONFORMANCE
ANSI X3J16/ISO WG21 Joint C++ Committee