UNGETWC(3)

НАЗВАНИЕ
ungetwc - отправка широкого символа обратно в поток FILE

СИНТАКСИС
#include <wchar.h>

wint_t ungetwc(wint_t wc, FILE *stream);

ОПИСАНИЕ
Функция ungetwc - это эквивалент функции ungetc для широких символов. Она отправляет широкий символ обратно в поток stream и возвращает его.

Если wc равно WEOF, то возвращается WEOF. Если wc - это некорректный широкий символ, то переменная errno устанавливается равной EILSEQ, при этом возвращается WEOF.

Если wc - это корректный широкий символ, то он "выбрасывается" обратно в поток и, таким образом, становится доступным для последующей операции считывания широкого символа. Показания индикатора позиции в файле уменьшается на единицу (или более). Индикатор конца файла "очищается". Непосредственный носитель файла при этой операции не задействуется.

Замечание: wc не должен быть последним широким символом в потоке, но может быть любым другим корректным широким символом.

Если реализация поддерживает несколько последовательных операций ungetwc подряд, то выдаваемые широкие символы будут считаны в обратном порядке; так что гарантированно сработает использование ungetwc только один раз.

ВОЗВРАЩАЕМЫЕ ЗНАЧЕНИЯ
Функция ungetwc возвращает wc в случае успешного завершения вызова или WEOF в случае ошибки.

СООТВЕТСТВИЕ СТАНДАРТАМ
ISO/ANSI C, UNIX98

СМ. ТАКЖЕ
fgetwc(3)

ЗАМЕЧАНИЯ
Поведение функции ungetwc зависит от категории LC_CTYPE текущей системной локали.