Namespaces
Variants

std:: ungetwc

From cppreference.net
< cpp ‎ | io ‎ | c
Определено в заголовочном файле <cwchar>

Если ch не равно WEOF , помещает широкий символ ch во входной буфер, связанный с потоком stream таким образом, что последующая операция чтения из stream извлечёт этот широкий символ. Внешнее устройство, связанное с потоком, не изменяется.

Операции перепозиционирования потока std::fseek , std::fsetpos и std::rewind отменяют эффекты std::ungetwc .

Если std::ungetwc вызывается более одного раза без промежуточного чтения или изменения позиции, операция может завершиться неудачей (другими словами, гарантируется буфер возврата размером 1, но любой буфер большего размера определяется реализацией). Если было выполнено несколько успешных вызовов std::ungetwc , операции чтения извлекают возвращённые широкие символы в порядке, обратном порядку вызовов std::ungetwc

Если ch равно WEOF , операция завершается неудачей и поток не изменяется.

Успешный вызов std::ungetwc сбрасывает флаг конца файла feof .

Успешный вызов std::ungetwc для потока (текстового или бинарного) изменяет индикатор позиции потока неопределённым образом, но гарантирует, что после извлечения всех возвращённых обратно широких символов операцией чтения, индикатор позиции потока будет равен своему значению до вызова std::ungetwc .

Параметры

ch - широкий символ для возврата
stream - файловый поток для возврата широкого символа

Возвращаемое значение

При успешном выполнении ch возвращается.

При неудаче WEOF возвращается, а заданный поток остается неизменным.

Смотрите также

возвращает символ обратно в файловый поток
(функция)
получает широкий символ из файлового потока
(функция)