std::setfill - cppreference.com (original) (raw)
| | | | | -------------------------------------------------------------- | | | | template< class CharT > /*unspecified*/ setfill( CharT c ); | | |
When used in an expression out << setfill(c) sets the fill character of the stream out to c.
[edit] Parameters
c | - | new value for the fill character |
---|
[edit] Return value
An object of unspecified type such that
- if out is an object of type std::basic_ostream<CharT, Traits>, the expression out << setfill(c)
- has type std::basic_ostream<CharT, Traits>&
- has value out
- behaves as if it called f(out, c)
where the function f is defined as:
template<class CharT, class Traits> void f(std::basic_ios<CharT, Traits>& str, CharT c) { // set fill character str.fill(c); }
[edit] Notes
The current fill character may be obtained with std::ostream::fill.
[edit] Example
#include #include int main() { std::cout << "default fill: [" << std::setw(10) << 42 << "]\n" << "setfill('*'): [" << std::setfill('*') << std::setw(10) << 42 << "]\n"; }
Output:
default fill: [ 42] setfill('*'): [********42]
[edit] Defect reports
The following behavior-changing defect reports were applied retroactively to previously published C++ standards.
DR | Applied to | Behavior as published | Correct behavior |
---|---|---|---|
LWG 183 | C++98 | setbase could only be used withstreams of type std::ostream | usable with any outputcharacter stream |
[edit] See also
| | manages the fill character (public member function of std::basic_ios<CharT,Traits>) [edit] | | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | | sets the placement of fill characters (function) [edit] | | | changes the width of the next input/output field (function) [edit] |