basic_streambuf::sungetc
Obtém um caractere de fluxo.
int_type sungetc( );
Valor de retorno
Retorna o caractere ou falha.
Comentários
Se uma posição de putback estiver disponível, a função de membro diminui o ponteiro seguir para o buffer de entrada e retorna traits_type::to_int_type(*gptr).Em o entanto, não é sempre possível determinar o último caractere ler de modo que pode ser capturada no estado do buffer atual.Se isso for verdadeira, então a função retorna pbackfail.Para evitar essa situação, mantenha o controle de caracteres para colocar a voltar e a chamada sputbackc(ch), que não falhará forneceu-o a chama não no início de fluxo e você não tentar colocar a voltar mais de um caractere.
Exemplo
// basic_streambuf_sungetc.cpp
// compile with: /EHsc
#include <iostream>
#include <fstream>
int main( )
{
using namespace std;
ifstream myfile( "basic_streambuf_sungetc.txt", ios::in );
// Read and increment
int i = myfile.rdbuf( )->sbumpc( );
cout << ( char )i << endl;
// Read and increment
i = myfile.rdbuf( )->sbumpc( );
cout << ( char )i << endl;
// Decrement, read, and do not increment
i = myfile.rdbuf( )->sungetc( );
cout << ( char )i << endl;
i = myfile.rdbuf( )->sungetc( );
cout << ( char )i << endl;
i = myfile.rdbuf( )->sbumpc( );
cout << ( char )i << endl;
}
Entrada: basic_streambuf_sungetctxt.
testing
Saída
t
e
e
t
t
Requisitos
Cabeçalho: <streambuf>
namespace: STD