CARVIEW |
Select Language
HTTP/1.1 301 Moved Permanently
Server: nginx
Date: Thu, 24 Jul 2025 14:13:25 GMT
Content-Type: text/html; charset=UTF-8
Transfer-Encoding: chunked
Connection: keep-alive
Location: /reference/istream/ws/
HTTP/1.1 200 OK
Server: nginx
Date: Thu, 24 Jul 2025 14:13:26 GMT
Content-Type: text/html; charset=utf-8
Transfer-Encoding: chunked
Connection: keep-alive
ETag: W/"6f63-/xMqfmF3ObBrfjP1q6P4+TDIcSc"
Content-Encoding: gzip
Extracts as many whitespace characters as possible from the current position in the input sequence. The extraction stops as soon as a non-whitespace character is found. These extracted whitespace characters are discarded.
Notice that basic_istream objects have the skipws flag set by default: This applies a similar effect before the formatted extraction operations (see operator>>).
Calling this function does not alter the value returned by gcount.
Errors are signaled by modifying the internal state flags of is:
Multiple flags may be set on is by a single operation.
If the operation sets an internal state flag of is that was registered using its member exceptions, the function throws an exception of member type failure.
Output:
Concurrent access to the same stream object may cause data races, except for the standard stream objects cin and wcin when these are synchronized with stdio (in this case, no data races are initiated, although no guarantees are given on the order in which extracted characters are attributed to threads).
It throws an exception of member type failure if the resulting error state flag of is is not goodbit and its member exceptions was set to throw for that state.
Any exception thrown by an internal operation is caught and handled by the function, setting is's badbit flag. If badbit was set on the last call to exceptions for is, the function rethrows the caught exception.
Reference
C library:
- <cassert> (assert.h)
- <cctype> (ctype.h)
- <cerrno> (errno.h)
-
<cfenv> (fenv.h)C++11
- <cfloat> (float.h)
-
<cinttypes> (inttypes.h)C++11
- <ciso646> (iso646.h)
- <climits> (limits.h)
- <clocale> (locale.h)
- <cmath> (math.h)
- <csetjmp> (setjmp.h)
- <csignal> (signal.h)
- <cstdarg> (stdarg.h)
-
<cstdbool> (stdbool.h)C++11
- <cstddef> (stddef.h)
-
<cstdint> (stdint.h)C++11
- <cstdio> (stdio.h)
- <cstdlib> (stdlib.h)
- <cstring> (string.h)
-
<ctgmath> (tgmath.h)C++11
- <ctime> (time.h)
-
<cuchar> (uchar.h)C++11
- <cwchar> (wchar.h)
- <cwctype> (wctype.h)
Containers:
-
<array>C++11
- <deque>
-
<forward_list>C++11
- <list>
- <map>
- <queue>
- <set>
- <stack>
-
<unordered_map>C++11
-
<unordered_set>C++11
- <vector>
-
Input/Output:
Multi-threading:
-
<atomic>C++11
-
<condition_variable>C++11
-
<future>C++11
-
<mutex>C++11
-
<thread>C++11
-
Other:
- <algorithm>
- <bitset>
-
<chrono>C++11
-
<codecvt>C++11
- <complex>
- <exception>
- <functional>
-
<initializer_list>C++11
- <iterator>
- <limits>
- <locale>
- <memory>
- <new>
- <numeric>
-
<random>C++11
-
<ratio>C++11
-
<regex>C++11
- <stdexcept>
- <string>
-
<system_error>C++11
-
<tuple>C++11
-
<type_traits>C++11
-
<typeindex>C++11
- <typeinfo>
- <utility>
- <valarray>
<istream>
class templates
classes
manipulators
function
<istream> <iostream>
std::ws
for istream | istream& ws (istream& is); |
---|---|
basic template | template <class charT, class traits>basic_istream<charT,traits>& ws (basic_istream<charT,traits>& is); |
Extract whitespaces
Notice that basic_istream objects have the skipws flag set by default: This applies a similar effect before the formatted extraction operations (see operator>>).
No specifications on the internal operations performed by this function.
Internally, the function accesses the input sequence is by first constructing a sentry object (with noskipws set to
true
). Then (if good), it extracts characters from is's associated stream buffer object as if calling its member functions sbumpc or sgetc, and finally destroys the sentry object before returning.Calling this function does not alter the value returned by gcount.
Parameters
- is
- Input stream object from where whitespaces are extracted.
Because this function is a manipulator, it is designed to be used alone with no arguments in conjunction with the extraction (>>
) operations on input streams (see example below).
Return Value
Argument is.Errors are signaled by modifying the internal state flags of is:
flag | error |
---|---|
eofbit | The function stopped extracting characters because the input sequence has no more characters available (end-of-file reached). |
failbit | The stream state of is was not good before the call (applies to C++11 and other implementations constructing a sentry object) |
badbit | Error on stream (such as when this function catches an exception thrown by an internal operation). When set, the integrity of the stream may have been affected. |
If the operation sets an internal state flag of is that was registered using its member exceptions, the function throws an exception of member type failure.
Example
|
|
Output:
one, two |
Data races
Modifies the stream object is.Concurrent access to the same stream object may cause data races, except for the standard stream objects cin and wcin when these are synchronized with stdio (in this case, no data races are initiated, although no guarantees are given on the order in which extracted characters are attributed to threads).
Exception safety
Basic guarantee: if an exception is thrown, the object is in a valid state.It throws an exception of member type failure if the resulting error state flag of is is not goodbit and its member exceptions was set to throw for that state.
Any exception thrown by an internal operation is caught and handled by the function, setting is's badbit flag. If badbit was set on the last call to exceptions for is, the function rethrows the caught exception.
See also
- skipws
- Skip whitespaces (function)
- noskipws
- Do not skip whitespaces (function)
Home page | Privacy policy
© cplusplus.com, 2000-2025 - All rights reserved - v3.3.4s
Spotted an error? contact us
© cplusplus.com, 2000-2025 - All rights reserved - v3.3.4s
Spotted an error? contact us