C ++ streambuf - snextc

Descrição

É usado para avançar a posição atual da sequência de entrada controlada para o próximo caractere e retornar o próximo caractere.

Declaração

A seguir está a declaração para std :: basic_streambuf :: snextc.

int_type snextc();

Parâmetros

Nenhum

Valor de retorno

Ele retorna o caractere na próxima posição da sequência de entrada controlada, convertido em um valor do tipo int_type usando o membro traits_type :: to_int_type.

Exceções

Basic guarantee - se uma exceção for lançada, o buffer de fluxo está em um estado válido.

Corridas de dados

Ele modifica o objeto de buffer de fluxo.

Exemplo

No exemplo a seguir, explica sobre std :: basic_streambuf :: snextc.

#include <iostream>     
#include <fstream>      

int main () {

   std::ifstream istr ("sample.txt");
   if (istr) {
      std::streambuf * pbuf = istr.rdbuf();
      do {
         char ch = pbuf->sgetc();
         std::cout << ch;
      } while ( pbuf->snextc() != std::streambuf::traits_type::eof() );
      istr.close();
   }
   return 0;
}