Namensräume
Varianten
Aktionen

std::skipws, std::noskipws

Von cppreference.com
< cpp‎ | io‎ | manip
 
 
 
Input/output-Manipulatoren
Formatierung von Gleitkommazahlen
Ganzzahlformatierung
Boolean-Formatierung
Feldbreiten- und Füllzeichensteuerung
Andere Formatierungen
Leerzeichenverarbeitung
skipwsnoskipws
Ausgabe-Flushen
(C++20)  

Statusflags-Manipulation
Zeit- und Geld-I/O
(C++11)
(C++11)
(C++11)
(C++11)
Gequoteter Manipulator
(C++14)
 
Definiert in Header <ios>
std::ios_base& skipws( std::ios_base& str );
(1)
std::ios_base& noskipws( std::ios_base& str );
(2)

Aktiviert oder deaktiviert das Überspringen von führenden Leerzeichen durch die formatierten Eingabefunktionen (standardmäßig aktiviert). Hat keine Auswirkung auf die Ausgabe.

1) Aktiviert das skipws-Flag im Stream str, als ob str.setf(std::ios_base::skipws) aufgerufen würde.
2) Deaktiviert das skipws-Flag im Stream str, als ob str.unsetf(std::ios_base::skipws) aufgerufen würde.

Das Überspringen von Leerzeichen wird durch den Konstruktor von std::basic_istream::sentry durchgeführt, der die als Leerzeichen klassifizierten Zeichen gemäß der std::ctype-Facette der dem Stream zugeordneten Locale liest und verwirft.

Dies ist ein I/O-Manipulator, er kann mit einem Ausdruck wie out << std::noskipws für jedes out vom Typ std::basic_ostream oder mit einem Ausdruck wie in >> std::noskipws für jedes in vom Typ std::basic_istream aufgerufen werden.

Inhalt

[bearbeiten] Parameter

str - Referenz auf einen E/A-Stream.

[bearbeiten] Rückgabewert

str (Referenz auf den Stream nach der Manipulation).

[bearbeiten] Beispiel

#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';
}

Ausgabe

Default  behavior: c1 = a c2 = b c3 = c
noskipws behavior: c1 = a c2 =   c3 = b

[bearbeiten] Siehe auch

Löscht die angegebenen ios_base-Flags
(Funktion) [bearbeiten]
Setzt die angegebenen ios_base-Flags
(Funktion) [bearbeiten]
Verbraucht Leerzeichen
(Funktion-Template) [bearbeiten]