fgetws - читает
строку
широких
символов
из потока FILE
Standard C library (
libc,
-lc)
#include <wchar.h>
wchar_t *fgetws(wchar_t ws[restrict .n], int n, FILE *restrict stream);
The
fgetws() function is the wide-character equivalent of the
fgets(3) function. It reads a string of at most
n-1 wide
characters into the wide-character array pointed to by
ws, and adds a
terminating null wide character (L'\0'). It stops reading wide characters
after it has encountered and stored a newline wide character. It also stops
when end of stream is reached.
Программист
должен
убедиться
в том, что
выделил
для
ws
память,
достаточную
для записи
не менее
n
широких
символов.
Неблокирующий
аналог
смотрите в
unlocked_stdio(3).
Функция
fgetws()
в случае
удачного
выполнения
возвращает
ws. Если
достигнут
конец
потока или
возникает
ошибка, то
возвращается
NULL.
Описание
терминов
данного
раздела
смотрите в
attributes(7).
Интерфейс |
Атрибут |
Значение |
fgetws() |
Безвредность
в нитях |
MT-Safe |
POSIX.1-2001, POSIX.1-2008, C99.
Поведение
fgetws() зависит
от
категории
LC_CTYPE текущей
локали.
Из-за
отсутствия
дополнительной
информации,
передаваемой
в
fopen(3),
закономерно
ожидать,
что
fgetws() на
самом деле
читает
многобайтовую
строку из
потока, а
затем
преобразует
её в
широкую
строку.
Данная
функция
ненадёжна,
так как не
позволяет
правильно
обработать
ситуацию,
когда во
входных
данных
появляется
широкий
символ null.
fgetwc(3),
unlocked_stdio(3)
Русский
перевод
этой
страницы
руководства
был сделан
Azamat Hackimov <
[email protected]>, Dmitry Bolkhovskikh
<
[email protected]>, Yuri Kozlov <
[email protected]> и
Иван
Павлов <
[email protected]>
Этот
перевод
является
бесплатной
документацией;
прочитайте
Стандартную
общественную
лицензию GNU
версии 3
или более
позднюю,
чтобы
узнать об
условиях
авторского
права. Мы не
несем
НИКАКОЙ
ОТВЕТСТВЕННОСТИ.
Если вы
обнаружите
ошибки в
переводе
этой
страницы
руководства,
пожалуйста,
отправьте
электронное
письмо на
[email protected]