C++ Istream Library - ws


Advertisements

Description

It is used to 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.

Declaration

Following is the declaration for 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);

Parameters

is − Input stream object from where whitespaces are extracted.

Exceptions

Basic guarantee − if an exception is thrown, the stream is in a valid state.

Data races

Modifies the stream object is.

Example

In below example explains about std::ws.

#include <iostream>
#include <sstream>

int main () {
   char a[10], b[10];

   std::istringstream iss ("one \n \t two");
   iss >> std::noskipws;
   iss >> a >> std::ws >> b;
   std::cout << a << ", " << b << '\n';

   return 0;
}

Let us compile and run the above program, this will produce the following result −

one, two
istream.htm
Advertisements