ungetwc
| Types and objects | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
헤더 파일에 정의됨
<wchar.h>
|
||
|
wint_t ungetwc
(
wint_t ch,
FILE
*
stream
)
;
|
(C95부터) | |
만약
ch
가
WEOF
와 같지 않다면, 넓은 문자
ch
를 스트림
stream
와 연관된 입력 버퍼에 밀어넣어, 이후
stream
에서의 읽기 작업이 해당 넓은 문자를 검색할 수 있도록 합니다. 스트림과 연관된 외부 장치는 수정되지 않습니다.
스트림 재위치 연산
fseek
,
fsetpos
, 그리고
rewind
는
ungetwc
의 효과를 무효화합니다.
만약
ungetwc
가 읽기나 재위치 작업 없이 여러 번 호출되면, 실패할 수 있습니다 (다시 말해, 크기 1의 푸시백 버퍼는 보장되지만, 더 큰 버퍼는 구현에 따라 정의됩니다). 여러 번의 성공적인
ungetwc
가 수행된 경우, 읽기 작업은 푸시백된 와이드 문자들을
ungetwc
의 역순으로 검색합니다.
만약
ch
가
WEOF
와 같다면, 연산이 실패하고 스트림은 영향을 받지 않습니다.
ungetwc
에 대한 성공적인 호출은
파일 끝 상태 플래그
feof
를 지웁니다.
스트림(텍스트 또는 바이너리)에 대한
ungetwc
호출이 성공하면, 스트림 위치 지시자를 지정되지 않은 방식으로 수정하지만, 모든 밀어넣은 와이드 문자가 읽기 연산으로 검색된 후에는 스트림 위치 지시자가
ungetwc
호출 전의 값과 동일하다는 것을 보장합니다.
목차 |
매개변수
| ch | - | 되돌릴 와이드 문자 |
| stream | - | 와이드 문자를 되돌릴 파일 스트림 |
반환값
성공 시
ch
가 반환됩니다.
실패 시 WEOF 가 반환되고 주어진 스트림은 변경되지 않은 상태로 유지됩니다.
참고문헌
- C11 표준 (ISO/IEC 9899:2011):
-
- 7.29.3.10 ungetwc 함수 (p: 425-426)
- C99 표준 (ISO/IEC 9899:1999):
-
- 7.24.3.10 ungetwc 함수 (p: 370-371)
참조 항목
|
파일 스트림에 문자를 다시 넣음
(함수) |
|
|
(C95)
|
파일 스트림에서 와이드 문자를 가져옴
(함수) |
|
C++ 문서
for
ungetwc
|
|