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.
Contents |
[edit]Parameters
str | - | reference to I/O stream |
[edit]Return value
str (reference to the stream after manipulation).
[edit]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
[edit]See also
clears the specified ios_base flags (function) | |
sets the specified ios_base flags (function) | |
consumes whitespace (function template) |