After the object cin is initialized, cin.tie() returns &cout. Its state is otherwise the same as required for basic_ios<char>::init ([basic.ios.cons]).
The object cout controls output to a stream buffer associated with the object stdout, declared in <cstdio> ([c.files]).
The object cerr controls output to a stream buffer associated with the object stderr, declared in <cstdio> ([c.files]).
After the object cerr is initialized, cerr.flags() & unitbuf is nonzero and cerr.tie() returns &cout. Its state is otherwise the same as required for basic_ios<char>::init ([basic.ios.cons]).