On this page
std::ios_base::fmtflags
|
||
|
||
|
||
|
||
|
Specifies available formatting flags. It is a BitmaskType. The following constants are defined:
Constant | Explanation |
---|---|
dec |
use decimal base for integer I/O: see std::dec |
oct |
use octal base for integer I/O: see std::oct |
hex |
use hexadecimal base for integer I/O: see std::hex |
basefield |
dec | oct | hex . Useful for masking operations |
left |
left adjustment (adds fill characters to the right): see std::left |
right |
right adjustment (adds fill characters to the left): see std::right |
internal |
internal adjustment (adds fill characters to the internal designated point): see std::internal |
adjustfield |
left | right | internal . Useful for masking operations |
scientific |
generate floating point types using scientific notation, or hex notation if combined with fixed : see std::scientific |
fixed |
generate floating point types using fixed notation, or hex notation if combined with scientific : see std::fixed |
floatfield |
scientific | fixed . Useful for masking operations |
boolalpha |
insert and extract bool type in alphanumeric format: see std::boolalpha |
showbase |
generate a prefix indicating the numeric base for integer output, require the currency indicator in monetary I/O: see std::showbase |
showpoint |
generate a decimal-point character unconditionally for floating-point number output: see std::showpoint |
showpos |
generate a + character for non-negative numeric output: see std::showpos |
skipws |
skip leading whitespace before certain input operations: see std::skipws |
unitbuf |
flush the output after each output operation: see std::unitbuf |
uppercase |
replace certain lowercase letters with their uppercase equivalents in certain output operations: see std::uppercase |
Example
The following example shows several different ways to print the same result.
#include <iostream>
int main()
{
const int 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 showbase
std::cout.flags(ff);
std::cout << num << '\n';
// not using fmtflags, but using manipulators:
std::cout << std::hex << std::showbase << num << '\n';
}
Output:
0x96
0x96
0x96
0x96
0x96
See also
manages format flags (public member function) |
|
sets specific format flag (public member function) |
|
clears specific format flag (public member function) |
|
changes the base used for integer I/O (function) |
|
changes the fill character (function template) |
|
(C++11)(C++11)
|
changes formatting used for floating-point I/O (function) |
controls whether prefix is used to indicate numeric base (function) |
|
switches between textual and numeric representation of booleans (function) |
|
controls whether the + sign used with non-negative numbers (function) |
|
controls whether decimal point is always included in floating-point representation (function) |
|
controls whether output is flushed after each operation (function) |
|
controls whether leading whitespace is skipped on input (function) |
|
controls whether uppercase characters are used with some output formats (function) |
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/w/cpp/io/ios_base/fmtflags