Quote Originally Posted by Lindley View Post
cout is a buffered stream. That means it won't display anything you write to it until the buffer is flushed (or it fills up). While cout << flush is available, whenever you do cout << endl it flushes the stream as well. (So if you don't need to flush the stream but you want to write a new line, use cout << '\n' instead.)

cerr is unbuffered, FYI.
While that is true, and documented for:

Microsoft Visual C++ 1.0 Professional Edition
Microsoft Visual C++ 1.5 Professional Edition
Microsoft Visual C++ 1.51
Microsoft Visual C++ 1.52 Professional Edition
Microsoft Visual C++ 2.0 Professional Edition
Microsoft Visual C++ 2.1
Microsoft Visual C++ 4.0 Standard Edition
Microsoft Visual C++ 5.0 Enterprise Edition
Microsoft Visual C++ 6.0 Enterprise Edition
Microsoft Visual C++ 5.0 Professional Edition
Microsoft Visual C++ 6.0 Professional Edition
Microsoft Visual C++, 32-bit Learning Edition 6.0

I can NOT find a statement about this functionallity in the ISO Standard....can you please post a link showing this is true for C++ and not just for certain compilers [the above are all known to be non-compliant as they were written before the standard - and are also all obsolete....]