cplusplus.com cplusplus.com
cplusplus.com   C++ : Reference : IOstream Library : manipulators : noskipws
- -
C++
Information
Documentation
Reference
Articles
Sourcecode
Forum
Reference
C Library
IOstream Library
Strings library
STL Containers
STL Algorithms
IOstream Library
manipulators
classes:
· filebuf
· fstream
· ifstream
· ios
· iostream
· ios_base
· istream
· istringstream
· ofstream
· ostream
· ostringstream
· streambuf
· stringbuf
· stringstream
objects:
· cerr
· cin
· clog
· cout
types:
· fpos
· streamoff
· streampos
· streamsize
manipulators
· boolalpha
· dec
· endl
· ends
· fixed
· flush
· hex
· internal
· left
· noboolalpha
· noshowbase
· noshowpoint
· noshowpos
· noskipws
· nounitbuf
· nouppercase
· oct
· resetiosflags
· right
· scientific
· setbase
· setfill
· setiosflags
· setprecision
· setw
· showbase
· showpoint
· showpos
· skipws
· unitbuf
· uppercase
· ws

-

noskipws manipulator function
ios_base& noskipws ( ios_base& str );
<ios>

Do not skip whitespaces

Clears the skipws format flag for the str stream.

When the skipws format flag is not set, the extraction operation considers initial whitespace characters as valid content to be extracted. Tab spaces, carriage returns and blank spaces are all considered whitespaces.

This flag can be set with the skipws manipulator. When this flag is set, as many initial whitespace characters as necessary are read and discarded from the stream until a non-whitespace character is found before every extraction operation.

Notice that many extraction operations consider the whitespaces themselves as the terminating character, therfore, with the skipws flag disabled, some extraction operations may extract no characters at all from the stream.

The boolalpha flag is set in standard streams on initialization.

Parameters

str
Stream object where to apply.
Because this function is a manipulator, it is designed to be used alone with no arguments in conjunction with the insertion (<<) and extraction (>>) operations on streams (see example below).

Return Value

A reference to the stream object.

Example

// noskipws flag example
#include <iostream>
#include <sstream>
using namespace std;

int main () {
  char a, b, c;

  istringstream iss ("  123");
  iss >> noskipws >> a >> b >> c;
  cout << a << b << c << endl;

  iss.seekg(0);
  iss >> skipws >> a >> b >> c;
  cout << a << b << c << endl;
  return 0;
}

The execution of this example displays something similar to:

  1
123
Notice that in the first set of extractions, the leading spaces were extracted, while in the second they were skipped.

See also

skipws Skip whitespaces (manipulator function)
ios_base::flags Get/set format flags (public member function)
ios_base::setf Set specific format flags (public member function)
ios_base::unsetf Clear specific format flags (public member function)

© The C++ Resources Network, 2000-2007 - All rights reserved
Spotted an error? - contact us