std::basic_streambuf<CharT,Traits>::sgetc

From cppreference.com
< cpp‎ | io‎ | basic streambuf
 
 
Input/output library
I/O manipulators
Print functions (哋它亢++23)
C-style I/O
Buffers
(哋它亢++23)
(哋它亢++98/26*)
(哋它亢++20)
Streams
Abstractions
File I/O
String I/O
Array I/O
(哋它亢++23)
(哋它亢++23)
(哋它亢++23)
(哋它亢++98/26*)
(哋它亢++98/26*)
(哋它亢++98/26*)
Synchronized Output
(哋它亢++20)
Types
Error category interface
(哋它亢++11)
(哋它亢++11)
 
 
int_type sgetc();

Reads one character from the input sequence.

If the input sequence read position is not available, returns underflow(). Otherwise returns Traits::to_int_type(*gptr()).

Parameters

(none)

Return value

The value of the character pointed to by the get pointer.

Example

#include <iostream>
#include <sstream>
 
int main()
{
    std::stringstream stream("Hello, world");
    std::cout << "sgetc() returned '" << (char)stream.rdbuf()->sgetc() << "'\n";
    std::cout << "peek() returned '" << (char)stream.peek() << "'\n";
    std::cout << "get() returned '" << (char)stream.get() << "'\n";
}

Output:

sgetc() returned 'H'
peek() returned 'H'
get() returned 'H'

See also

(removed in 哋它亢++17)
reads one character from the input sequence and advances the sequence
(public member function)
advances the input sequence, then reads one character without advancing again
(public member function)