| I/O manipulators | ||||
| Print functions(C++23) | ||||
| C-style I/O | ||||
| Buffers | ||||
(C++23) | ||||
(C++98/26*) | ||||
(C++20) | ||||
| Streams | ||||
| Abstractions | ||||
| File I/O | ||||
| String I/O | ||||
| Array I/O | ||||
(C++23) | ||||
(C++23) | ||||
(C++23) | ||||
(C++98/26*) | ||||
(C++98/26*) | ||||
(C++98/26*) | ||||
| Synchronized Output | ||||
(C++20) | ||||
| Types | ||||
| Error category interface | ||||
(C++11) | ||||
(C++11) |
| Member functions | ||||
| Formatting | ||||
| Locales | ||||
| Internal extensible array | ||||
| Miscellaneous | ||||
| Member classes | ||||
| Member types | ||||
ios_base::fmtflags | ||||
typedef/*implementation defined*/ fmtflags; | ||
staticconstexpr fmtflags dec=/*implementation defined*/ staticconstexpr fmtflags oct=/*implementation defined*/ | ||
staticconstexpr fmtflags left=/*implementation defined*/ staticconstexpr fmtflags right=/*implementation defined*/ | ||
staticconstexpr fmtflags scientific=/*implementation defined*/ staticconstexpr fmtflags fixed=/*implementation defined*/ | ||
staticconstexpr fmtflags boolalpha=/*implementation defined*/ staticconstexpr fmtflags showbase=/*implementation defined*/ | ||
Specifies available formatting flags. It is aBitmaskType. The following constants are defined:
| Constant | Explanation |
| dec | use decimal base for integer I/O: seestd::dec |
| oct | use octal base for integer I/O: seestd::oct |
| hex | use hexadecimal base for integer I/O: seestd::hex |
| basefield | dec| oct| hex. Useful for masking operations |
| left | left adjustment (adds fill characters to the right): seestd::left |
| right | right adjustment (adds fill characters to the left): seestd::right |
| internal | internal adjustment (adds fill characters to the internal designated point): seestd::internal |
| adjustfield | left| right| internal. Useful for masking operations |
| scientific | generate floating point types using scientific notation, or hex notation if combined withfixed: seestd::scientific |
| fixed | generate floating point types using fixed notation, or hex notation if combined withscientific: seestd::fixed |
| floatfield | scientific| fixed. Useful for masking operations |
| boolalpha | insert and extractbool type in alphanumeric format: seestd::boolalpha |
| showbase | generate a prefix indicating the numeric base for integer output, require the currency indicator in monetary I/O: seestd::showbase |
| showpoint | generate a decimal-point character unconditionally for floating-point number output: seestd::showpoint |
| showpos | generate a+ character for non-negative numeric output: seestd::showpos |
| skipws | skip leading whitespace before certain input operations: seestd::skipws |
| unitbuf | flush the output after each output operation: seestd::unitbuf |
| uppercase | replace certain lowercase letters with their uppercase equivalents in certain output operations: seestd::uppercase |
The following example shows several different ways to print the same result.
#include <iostream> int main(){constint num=150; // using fmtflags as class member constants:std::cout.setf(std::ios_base::hex, std::ios_base::basefield);std::cout.setf(std::ios_base::showbase);std::cout<< num<<'\n'; // using fmtflags as inherited class member constants:std::cout.setf(std::ios::hex, std::ios::basefield);std::cout.setf(std::ios::showbase);std::cout<< num<<'\n'; // using fmtflags as object member constants:std::cout.setf(std::cout.hex,std::cout.basefield);std::cout.setf(std::cout.showbase);std::cout<< num<<'\n'; // using fmtflags as a type: std::ios_base::fmtflags ff; ff=std::cout.flags(); ff&= ~std::cout.basefield;// unset basefield bits ff|=std::cout.hex;// set hex ff|=std::cout.showbase;// set showbasestd::cout.flags(ff);std::cout<< num<<'\n'; // not using fmtflags, but using manipulators:std::cout<<std::hex<<std::showbase<< num<<'\n';}
Output:
0x960x960x960x960x96
| manages format flags (public member function)[edit] | |
| sets specific format flag (public member function)[edit] | |
| clears specific format flag (public member function)[edit] | |
| changes the base used for integer I/O (function)[edit] | |
| changes the fill character (function template)[edit] | |
(C++11)(C++11) | changes formatting used for floating-point I/O (function)[edit] |
| controls whether prefix is used to indicate numeric base (function)[edit] | |
| switches between textual and numeric representation of booleans (function)[edit] | |
controls whether the+ sign used with non-negative numbers(function)[edit] | |
| controls whether decimal point is always included in floating-point representation (function)[edit] | |
| controls whether output is flushed after each operation (function)[edit] | |
| controls whether leading whitespace is skipped on input (function)[edit] | |
| controls whether uppercase characters are used with some output formats (function)[edit] |