FWIDE(3)

NAZWA
fwide - ustawienie i określenie orientacji strumienia FILE

SKŁADNIA
#include <wchar.h>

int fwide(FILE *stream, int mode);

Wymagane ustawienia makr biblioteki glibc (patrz feature_test_macros(7)):

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

OPIS
Gdy mode jest zerem, funkcja fwide() podaje bieżącą orientację strumienia stream. Zwraca wartość dodatnią, gdy stream jest zorientowany szerokoznakowo, tzn. gdy wejście/wyjście szerokich znaków jest dozwolone, a wejście/wyjście dla znaków typu char nie jest dozwolone. Wartość ujemna jest zwracana, gdy stream jest zorientowany bajtowo, tzn. gdy wejście/wyjście dla znaków typu char jest dozwolone, a wejście/wyjście dla szerokich znaków nie jest dozwolone. Zero jest zwracane, gdy strumień stream nie ma jeszcze orienatcji; w tym przypadku następna operacja wejścia/wyjścia może zmienić orientację (na bajtową, jeśli będzie to operacja wejścia/wyjścia znaków typu char, lub na szerokoznakową, jeśli będzie to operacja wejścia/wyjścia szerokich znaków).

Raz uzyskana przez strumień orientacja nie może zostać zmieniona aż do zamknięcia strumienia.

Gdy mode jest różne od zera, to funkcja fwide() najpierw próbuje ustawić orientację strumienia stream (na szerokoznakową, gdy mode jest większe od 0, lub na bajtową, gdy mode jest mniejsze od 0). Następnie zwraca wartość określającą bieżącą orientację, jak opisano powyżej.

WARTOŚĆ ZWRACANA
Funkcja fwide() zwraca orientację strumienia, po jej ewentualnej zamianie. Zwrócenie wartości dodatniej oznacza orientację szerokoznakową. Zwrócenie wartości ujemnej oznacza orientację bajtową. Zwrócenie wartości zero oznacza orientację nieokreśloną.

ZGODNE Z
POSIX.1-2001, POSIX.1-2008, C99.

UWAGI
Zapisanie szerokich znaków do strumienia zorientowanego bajtowo może zostać wykonane za pomocą funkcji fprintf(3) przy użyciu dyrektyw %lc oraz %ls.

Zapisanie znaków typu char do strumienia zorientowanego szerokoznakowo może być wykonane za pomocą funkcji fwprintf(3) przy użyciu dyrektyw %c oraz %s.

ZOBACZ TAKŻE
fprintf(3), fwprintf(3)

O STRONIE
Angielska wersja tej strony pochodzi z wydania 4.07 projektu Linux man-pages. Opis projektu, informacje dotyczące zgłaszania błędów, oraz najnowszą wersję oryginału można znaleźć pod adresem https://www.kernel.org/doc/man-pages/.

TŁUMACZENIE
Autorami polskiego tłumaczenia niniejszej strony podręcznika man są: Andrzej Krzysztofowicz (PTM) <ankry@mif.pg.gda.pl>, Robert Luberda <robert@debian.org> i Michał Kułach <michal.kulach@gmail.com>.

Polskie tłumaczenie jest częścią projektu manpages-pl; uwagi, pomoc, zgłaszanie błędów na stronie http://sourceforge.net/projects/manpages-pl/. Jest zgodne z wersją 4.07 oryginału.