fputwc - записывает широкий символ в поток FILE
fputwc(3)
записывает широкий символ в поток FILE
Other Alias
putwc
ОБЗОР
#include <stdio.h>
#include <wchar.h>
wint_t fputwc(wchar_t wc, FILE *stream);
wint_t putwc(wchar_t wc, FILE *stream);
ОПИСАНИЕ
Функция
fputwc — это эквивалент функции
fputc(3), но для широких
символов. Она записывает широкий символ
wc в поток
stream. Если
значение
ferror(stream) истинно, то возвращается
WEOF. Если при
преобразовании в широкий символ возникает ошибка, то значение переменной
errno устанавливается равным
EILSEQ и возвращается
WEOF. В любом
другом случае возвращается
wc.
Функция putwc() — это функция, или макрос, идентичный fputwc(). Она
может быть реализована в виде макроса, и может вычислять свой аргумент более
одного раза. Вообще нет смысла использовать эту функцию.
Неблокирующие аналоги смотрите в unlocked_stdio(3).
ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ
Функция
fputwc() возвращает
wc, если не было ошибок, или
WEOF в
противном случае. При ошибке в
errno записывается соответствующее
значение.
ОШИБКИ
Кроме обычных могут возникать:
EILSEQ
Не удалось преобразовать wc в кодировку потока.
АТРИБУТЫ
Описание терминов данного раздела смотрите в
attributes(7).
Интерфейс Атрибут Значение
fputwc(),
putwc()
безвредность в потоках: безвредно (MT-Safe)
СООТВЕТСТВИЕ СТАНДАРТАМ
POSIX.1-2001, POSIX.1-2008, C99.
ЗАМЕЧАНИЯ
Поведение
fputwc() зависит от категории
LC_CTYPE текущей локали.
Из-за отсутствия дополнительной информации, передаваемой в fopen(3),
закономерно ожидать, что fputwc() на самом деле пишет многобайтовую
последовательность, соответствующую широкому символу wc.