std::skipws, std::noskipws
From cppreference.com
Defined in header <ios>
|
||
std::ios_base& skipws( std::ios_base& str ); |
(1) | |
std::ios_base& noskipws( std::ios_base& str ); |
(2) | |
Enables or disables skipping of leading whitespace by the formatted input functions (enabled by default). Has no effect on output.
The whitespace skipping is performed by the constructor of std::basic_istream::sentry, which reads and discards the characters classified as whitespace by the std::ctype facet of the stream's imbued locale.
This is an I/O manipulator, it may be called with an expression such as out << std::noskipws for any out
of type std::basic_ostream or with an expression such as in >> std::noskipws for any in
of type std::basic_istream.
Parameters
str | - | reference to I/O stream |
Return value
str (reference to the stream after manipulation).
Example
Run this code
#include <iostream> #include <sstream> int main() { char c1, c2, c3; std::istringstream("a b c") >> c1 >> c2 >> c3; std::cout << "Default behavior:" " c1 = " << c1 << " c2 = " << c2 << " c3 = " << c3 << '\n'; std::istringstream("a b c") >> std::noskipws >> c1 >> c2 >> c3; std::cout << "noskipws behavior:" " c1 = " << c1 << " c2 = " << c2 << " c3 = " << c3 << '\n'; }
Output:
Default behavior: c1 = a c2 = b c3 = c noskipws behavior: c1 = a c2 = c3 = b
See also
clears the specified ios_base flags (function) | |
sets the specified ios_base flags (function) | |
consumes whitespace (function template) |