Partilhar via


operator>> (<istream>)

Caracteres e cadeias de caracteres de extrações de fluxo.

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
    );

Parâmetros

  • _Ch
    Um caractere.

  • _Istr
    Um fluxo.

  • _Str
    Uma cadeia de caracteres.

  • _Val
    Um tipo.

Valor de retorno

O fluxo

Comentários

A classe de basic_istream também define vários operadores de extração. Para obter mais informações, consulte basic_istream::operator>>.

A função do modelo:

template<class Elem, class Tr>
   basic_istream<Elem, Tr>& operator>>(
      basic_istream<Elem, Tr>& _Istr, Elem *_Str);

o extrai até N - 1 elementos e armazená-los na matriz que começam no _Str. Se _Istr.largura for maior que zero, Em são _Istr.width; caso contrário, é o tamanho da matriz a maior de Elem que pode ser declarada. A função sempre armazena o valor Elem() depois que alguns elementos que armazenar extraídos. A extração para no início ao fim do arquivo, em um caractere com valor Elem(0) (que não é extraído), ou em qualquer elemento (que não é extraído) que será rejeitado por WS. Se a função não extraem nenhum elemento, chama _Istr.setstate(failbit). Em qualquer caso, chama _Istr.width(0) e retorna _Istr.

Security Note a cadeia de caracteres com terminação nula que está sendo extraídos do fluxo de entrada não deve exceder o tamanho do buffer _Strde destino. Para obter mais informações, consulte Evitando saturações de buffer.

A função do modelo:

template<class Elem, class Tr>
   basic_istream<Elem, Tr>& operator>>(
      basic_istream<Elem, Tr>& _Istr, Elem& _Ch);

extrai um elemento, se possível, e o coloca em _Ch. Se não, chama is.setstate(failbit). Em qualquer caso, retorna _Istr.

A função do modelo:

template<class Tr>
   basic_istream<char, Tr>& operator>>(
      basic_istream<char, Tr>& _Istr, signed char *_Str);

retorna _Istr >> (char *)_Str.

A função do modelo:

template<class Tr>
   basic_istream<char, Tr>& operator>>(
      basic_istream<char, Tr>& _Istr, signed char& _Ch);

retorna _Istr >> (char&)_Ch.

A função do modelo:

template<class Tr>
   basic_istream<char, Tr>& operator>>(
      basic_istream<char, Tr>& _Istr, unsigned char *_Str);

retorna _Istr >> (char *)_Str.

A função do modelo:

template<class Tr>
   basic_istream<char, Tr>& operator>>(
      basic_istream<char, Tr>& _Istr, unsigned char& _Ch);

retorna _Istr >> (char&)_Ch.

A função do modelo:

template<class Elem, class Tr, class Type>
   basic_istream<Elem, Tr>& operator>>(
      basic_istream<char, Tr>&& _Istr,
      Type& _Val
   );

retorna _Istr >> _Val (e converte rvalue reference a _Istr a lvalue no processo).

Exemplo

// 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;
}

Entrada

1234567890

Saída

12345678

Requisitos

istream <deCabeçalho: >

Namespace: std

Consulte também

Referência

basic_istream::operator>>

Programação iostream

Convenções iostreams