C++ streambuf - sbumpc



Description

It is used to get current character and advance to next position and returns the character at the current position of the controlled input sequence, and advances the position indicator to the next character.

Declaration

Following is the declaration for std::basic_streambuf::sbumpc.

int_type sbumpc();

Parameters

none

Return Value

It returns the character at the current position of the controlled input sequence before the call, converted to a value of type int_type using member traits_type::to_int_type.

Exceptions

Basic guarantee − if an exception is thrown, the stream buffer is in a valid state.

Data races

It modifies the stream buffer object.

Example

In below example explains about std::basic_streambuf::sbumpc.

#include <iostream>     
#include <fstream>      

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