Stream manipulators

Manipulators are functions specifically designed to be used in conjunction with the insertion (<<) and extraction (>>) operators on stream objects, for example:
cout << boolalpha;

They are still regular functions and can also be called as any other function using a stream object as argument, for example:
boolalpha (cout);

Manipulators are used to change formatting parameters on streams and to insert or extract certain special characters.

Basic format flags

These manipulators are usable on both input and output streams, although many only have an effect when applied to either output or input streams.

Independent flags (switch on):
Independent flags (switch off):
Numerical base format flags ("basefield" flags):
Floating-point format flags ("floatfield" flags):
Adustment format flags ("adjustfield" flags):

Input manipulators

Output manipulators

Parameterized manipulators

These functions take parameters when used as manipulators. They require the explicit inclusion of the header file <iomanip>.