fwide(3)

ИМЯ
fwide - задаёт и определяет ориентацию потока FILE

LIBRARY
Standard C library (libc, -lc)

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

int fwide(FILE *stream, int mode);

    Требования макроса тестирования свойств для glibc (см. feature_test_macros(7)):

fwide():
    _XOPEN_SOURCE >= 500 || _ISOC99_SOURCE
        || _POSIX_C_SOURCE >= 200112L

ОПИСАНИЕ
When mode is zero, the fwide() function determines the current orientation of stream. It returns a positive value if stream is wide-character oriented, that is, if wide-character I/O is permitted but char I/O is disallowed. It returns a negative value if stream is byte oriented—that is, if char I/O is permitted but wide-character I/O is disallowed. It returns zero if stream has no orientation yet; in this case the next I/O operation might change the orientation (to byte oriented if it is a char I/O operation, or to wide-character oriented if it is a wide-character I/O operation).

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

Если значение mode не равно нулю, то функция fwide() сначала попытается установить ориентацию stream (на широкие символы, если mode больше 0, или на байты, если mode меньше 0). Затем возвращается значение, отражающее текущую ориентацию, как указано выше.

ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ
Функция fwide() возвращает ориентацию потока после возможного её изменения. Возвращаемое положительное значение означает ориентацию на широкие символы. Возвращаемое отрицательное значение означает ориентацию на байты. Возвращаемое значение 0 означает неопределённость.

СТАНДАРТЫ
C11, POSIX.1-2008.

ИСТОРИЯ
POSIX.1-2001, C99.

ЗАМЕЧАНИЯ
Вывод широких символов в поток, ориентированный на байтовые операции, может быть осуществлён с помощью функции fprintf(3) с директивами %lc и %ls.

Вывод символов в поток, ориентированный на операции с широкими символами, может быть осуществлён с помощью функции fwprintf(3) с директивами %c и %s.

СМ. ТАКЖЕ
fprintf(3), fwprintf(3)

ПЕРЕВОД
Русский перевод этой страницы руководства был сделан Azamat Hackimov <azamat.hackimov@gmail.com>, Dmitry Bolkhovskikh <d20052005@yandex.ru>, Yuri Kozlov <yuray@komyakino.ru> и Иван Павлов <pavia00@gmail.com>

Этот перевод является бесплатной документацией; прочитайте Стандартную общественную лицензию GNU версии 3 (https://www.gnu.org/licenses/gpl-3.0.html) или более позднюю, чтобы узнать об условиях авторского права. Мы не несем НИКАКОЙ ОТВЕТСТВЕННОСТИ.

Если вы обнаружите ошибки в переводе этой страницы руководства, пожалуйста, отправьте электронное письмо на man-pages-ru-talks@lists.sourceforge.net.