<istream>
betriebspersonal
operator>>
Extrahiert von Zeichenfolgen und Zeichen aus dem Stream.
template <class Elem, class Tr>
basic_istream<Elem, Tr>& operator>>(
basic_istream<Elem, Tr>& Istr,
Elem* str);
template <class Elem, class Tr>
basic_istream<Elem, Tr>& operator>>(
basic_istream<Elem, Tr>& Istr,
Elem& Ch);
template <class Tr>
basic_istream<char, Tr>& operator>>(
basic_istream<char, Tr>& Istr,
signed char* str);
template <class Tr>
basic_istream<char, Tr>& operator>>(
basic_istream<char, Tr>& Istr,
signed char& Ch);
template <class Tr>
basic_istream<char, Tr>& operator>>(
basic_istream<char, Tr>& Istr,
unsigned char* str);
template <class Tr>
basic_istream<char, Tr>& operator>>(
basic_istream<char, Tr>& Istr,
unsigned char& Ch);
template <class Elem, class Tr, class Type>
basic_istream<Elem, Tr>& operator>>(
basic_istream<char, Tr>&& Istr,
Type& val);
Parameter
Ch
Ein Zeichen.
Istr
Ein Stream.
str
Eine Zeichenfolge.
val
Ein -Typ.
Rückgabewert
Ein Stream
Hinweise
Die basic_istream
-Klasse definiert außerdem mehrere Extraktionsoperatoren. Weitere Informationen finden Sie unter basic_istream::operator>>.
Die Funktionsvorlage:
template <class Elem, class Tr>
basic_istream<Elem, Tr>& operator>>(
basic_istream<Elem, Tr>& Istr, Elem* str);
extrahiert bis zu N - 1
Elementen und speichert sie in dem Array ab str. Wenn Istr.
die Breite größer als Null ist, ist Istr.width
N ; andernfalls ist sie die Größe des größten Arrays, das Elem
deklariert werden kann. Die Funktion speichert den Wert Elem()
immer nach den extrahierten Elementen, die gespeichert werden. Die Extraktion wird am frühen Ende der Datei, auf einem Zeichen mit Wert Elem(0)
(das nicht extrahiert wird) oder auf einem Element (das nicht extrahiert wird) beendet, das von ws verworfen würde. Wenn die Funktion keine Elemente extrahiert, wird sie aufgerufen Istr.
setstate
(failbit)
. In jedem Fall ruft sie Istr auf Istr.width(0)
und gibt Sie zurück.
Sicherheitshinweis : Die aus dem Eingabedatenstrom extrahierte NULL-Zeichenfolge darf die Größe des Zielpuffers str nicht überschreiten. Weitere Informationen finden Sie unter Vermeiden von Pufferüberläufen.
Die Funktionsvorlage:
template <class Elem, class Tr>
basic_istream<Elem, Tr>& operator>>(
basic_istream<Elem, Tr>& Istr, Elem& Ch);
extrahiert ein Element, sofern möglich, und speichert es in Ch. Andernfalls wird es aufgerufen is.
setstate
(failbit)
. In jedem Fall gibt sie Istr zurück.
Die Funktionsvorlage:
template <class Tr>
basic_istream<char, Tr>& operator>>(
basic_istream<char, Tr>& Istr, signed char* str);
Istr >> ( char * ) str
wird zurückgegeben.
Die Funktionsvorlage:
template <class Tr>
basic_istream<char, Tr>& operator>>(
basic_istream<char, Tr>& Istr, signed char& Ch);
Istr >> ( char& ) Ch
wird zurückgegeben.
Die Funktionsvorlage:
template <class Tr>
basic_istream<char, Tr>& operator>>(
basic_istream<char, Tr>& Istr, unsigned char* str);
Istr >> ( char * ) str
wird zurückgegeben.
Die Funktionsvorlage:
template <class Tr>
basic_istream<char, Tr>& operator>>(
basic_istream<char, Tr>& Istr, unsigned char& Ch);
Istr >> ( char& ) Ch
wird zurückgegeben.
Die Funktionsvorlage:
template <class Elem, class Tr, class Type>
basic_istream<Elem, Tr>& operator>>(
basic_istream<char, Tr>&& Istr,
Type& val);
gibt Istr >> val
zurück (und konvertiert einen Rvalue-Verweis in Istr
einen Lvalue im Prozess).
Beispiel
// istream_op_extract.cpp
// compile with: /EHsc
#include <iostream>
using namespace std;
int main( )
{
ws( cin );
char c[10];
cin.width( 9 );
cin >> c;
cout << c << endl;
}