| 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 | ||||
ios_base::setf | ||||
| Locales | ||||
| Internal extensible array | ||||
| Miscellaneous | ||||
| Member classes | ||||
| Member types | ||||
fmtflags setf( fmtflags flags); | (1) | |
fmtflags setf( fmtflags flags, fmtflags mask); | (2) | |
Sets the formatting flags to specified settings.
fl defines the state of internal formatting flags.fl defines the state of internal formatting flags.Contents |
| flags, mask | - | new formatting setting.mask defines which flags can be altered,flags defines which flags of those to be altered should be set (others will be cleared). Both parameters can be a combination of theformatting flags constants |
| 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 formatting flags before the call to the function.
#include <iomanip>#include <iostream>#include <numbers> int main(){constdouble PI=std::numbers::pi;constint WIDTH=15; std::cout.setf(std::ios::right);// equivalent: cout << right;std::cout<<std::setw(WIDTH/2)<<"radius"<<std::setw(WIDTH)<<"circumference"<<'\n'; std::cout.setf(std::ios::fixed);// equivalent: cout << fixed;for(double radius=1; radius<=6; radius+=0.5)std::cout<<std::setprecision(1)<<std::setw(WIDTH/2)<< radius<<std::setprecision(2)<<std::setw(WIDTH)<<(2* PI* radius)<<'\n';}
Output:
radius circumference 1.0 6.28 1.5 9.42 2.0 12.57 2.5 15.71 3.0 18.85 3.5 21.99 4.0 25.13 4.5 28.27 5.0 31.42 5.5 34.56 6.0 37.70
| manages format flags (public member function)[edit] | |
| clears specific format flag (public member function)[edit] |