Функция ungetwc - это эквивалент функции ungetc для широких
символов. Она отправляет широкий символ обратно в поток stream и
возвращает его.
Если wc равно WEOF, то возвращается WEOF. Если wc - это
некорректный широкий символ, то переменная errno устанавливается
равной EILSEQ, при этом возвращается WEOF.
Если wc - это корректный широкий символ, то он "выбрасывается"
обратно в поток и, таким образом, становится доступным для последующей
операции считывания широкого символа. Показания индикатора позиции в
файле уменьшается на единицу (или более). Индикатор конца файла
"очищается". Непосредственный носитель файла при этой операции не
задействуется.
Замечание: wc не должен быть последним широким символом в потоке,
но может быть любым другим корректным широким символом.
Если реализация поддерживает несколько последовательных операций
ungetwc подряд, то выдаваемые широкие символы будут считаны
в обратном порядке; так что гарантированно сработает использование
ungetwc только один раз.
ВОЗВРАЩАЕМЫЕ ЗНАЧЕНИЯ
Функция ungetwc возвращает wc в случае успешного завершения
вызова или WEOF в случае ошибки.