std::basic_streambuf<CharT,Traits>:: sungetc
| I/O manipulators | ||||
| Print functions (C++23) | ||||
| C-style I/O | ||||
| Buffers | ||||
|
(C++23)
|
||||
|
(
C++98/26*
)
|
||||
|
(C++20)
|
||||
| Streams | ||||
| Abstractions | ||||
| File I/O | ||||
| String I/O | ||||
| Array I/O | ||||
|
(C++23)
|
||||
|
(C++23)
|
||||
|
(C++23)
|
||||
|
(
C++98/26*
)
|
||||
|
(
C++98/26*
)
|
||||
|
(
C++98/26*
)
|
||||
| Synchronized Output | ||||
|
(C++20)
|
||||
| Types | ||||
| Error category interface | ||||
|
(C++11)
|
||||
|
(C++11)
|
|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
int_type sungetc
(
)
;
|
||
퍼트백 위치가 획득 영역에서 사용 가능한 경우( gptr ( ) > eback ( ) ), 다음 포인터( gptr() )를 감소시키고 현재 가리키는 문자를 반환합니다.
되돌리기 위치를 사용할 수 없는 경우, 가능하다면 입력 시퀀스를 되돌리기 위해 pbackfail() 을 호출합니다.
I/O 스트림 함수 basic_istream::unget 는 이 함수를 기반으로 구현됩니다.
목차 |
매개변수
(없음)
반환 값
되돌리기 위치가 사용 가능했던 경우, 다음 포인터가 현재 가리키고 있는 문자를
int_type
로 변환하여 반환합니다. 변환은
Traits
::
to_int_type
(
*
gptr
(
)
)
를 통해 수행됩니다. 이 스트림 버퍼에서의 다음 단일 문자 입력은 이 문자를 반환할 것입니다.
되돌리기 위치를 사용할 수 없는 경우, pbackfail() 이 반환하는 값을 반환하며, 실패 시에는 Traits :: eof ( ) 입니다.
예제
#include <iostream> #include <sstream> int main() { std::stringstream s("abcdef"); // gptr()이 'a'를 가리킴 char c1 = s.get(); // c = 'a', gptr()이 이제 'b'를 가리킴 char c2 = s.rdbuf()->sungetc(); // s.unget()과 동일: gptr()이 다시 'a'를 가리킴 char c3 = s.get(); // c3 = 'a', gptr()이 이제 'b'를 가리킴 char c4 = s.get(); // c4 = 'b', gptr()이 이제 'c'를 가리킴 std::cout << c1 << c2 << c3 << c4 << '\n'; s.rdbuf()->sungetc(); // 'b'로 돌아감 s.rdbuf()->sungetc(); // 'a'로 돌아감 int eof = s.rdbuf()->sungetc(); // 되돌릴 문자가 없음: pbackfail() 실패 if (eof == EOF) std::cout << "Nothing to unget after 'a'\n"; }
출력:
aaab Nothing to unget after 'a'
참고 항목
|
입력 시퀀스에 한 문자를 되돌려 놓음
(public member function) |
|
|
문자를 추출 취소함
(
std::basic_istream<CharT,Traits>
의
public member function)
|