The GNU C++ Iostream Library - Manipulators
Node: Manipulators
Next: Extending
Prev: Format Control
Up: Ios
Changing stream properties using manipulators
For convenience, manipulators provide a way to change certain properties of streams, or otherwise affect them, in the middle of expressions involving `<<' or `>>'. For example, you might write
cout << "|" << setfill('*') << setw(5) << 234 << "|";
to produce `|**234|' as output.
- Manipulator ws
-
Skip whitespace.
- Manipulator flush
-
Flush an output stream. For example, `cout << ... <<flush;' has the same effect as `cout << ...; cout.flush();'.
- Manipulator endl
-
Write an end of line character `\n', then flushes the output stream.
- Manipulator ends
-
Write `\0' (the string terminator character).
- Manipulator setprecision (int signif)
-
You can change the value of
ios::precision
in `<<' expressions with the manipulator `setprecision(signif)'; for example,
cout << setprecision(2) << 4.567;
prints `4.6'. Requires `#include <iomanip.h>'.
- Manipulator setw (int n)
-
You can change the value of
ios::width
in `<<' expressions with the manipulator `setw(n)'; for example,
cout << setw(5) << 234;
prints `234' with two leading blanks. Requires `#include <iomanip.h>'.
- Manipulator setbase (int base)
-
Where base is one of
10
(decimal), 8
(octal), or 16
(hexadecimal), change the base value for numeric representations. Requires `#include <iomanip.h>'.
- Manipulator dec
-
Select decimal base; equivalent to `setbase(10)'.
- Manipulator hex
-
Select hexadecimal base; equivalent to `setbase(16)'.
- Manipulator oct
-
Select octal base; equivalent to `setbase(8)'.
- Manipulator setfill (char padding)
-
Set the padding character, in the same way as
ios::fill
. Requires `#include <iomanip.h>'.
Next: Extending
Up: Ios