fgetws(3) odczytuje łańcuch szerokich znaków ze strumienia FILE

SKŁADNIA

#include <wchar.h>


wchar_t *fgetws(wchar_t *ws, int n, FILE *stream);

OPIS

Funkcja fgetws() jest szerokoznakowym odpowiednikiem funkcji fgets(3). Wczytuje łańcuch zawierający co najwyżej n-1 szerokich znaków do tablicy szerokich znaków wskazywanej przez ws oraz dodaje znak końca łańcucha (L'\0'). Kończy czytanie, gdy natrafi na szeroki znak końca linii. Znak ten jest wczytywany do tablicy. Kończy również w razie napotkania końca strumienia.

Programista musi zapewnić w ws miejsce na co najmniej n szerokich znaków.

Informacje o nieblokujących odpowiednikach znajdują się w unlocked_stdio(3).

WARTOŚĆ ZWRACANA

Funkcja fgetws() w przypadku pomyślnego zakończenia zwraca ws. W razie natrafienia na koniec strumienia lub wystąpienia błędu zwraca NULL.

ZGODNE Z

C99, POSIX.1-2001.

UWAGI

Zachowanie fgetws() zależy od kategorii LC_CTYPE bieżących ustawień regionalnych.

W przypadku nieprzekazania dodatkowych informacji przy wywołaniu fopen(3) rozsądne jest oczekiwanie, że fgetws() faktycznie odczyta wielobajtowy łańcuch ze strumienia i przetworzy go na szeroki znak.

Na funkcji tej nie można polegać, gdyż nie pozwala na prawidłowe traktowanie szerokich znaków null, które mogą się pojawić na wejściu.

O STRONIE

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

TŁUMACZENIE

Autorami polskiego tłumaczenia niniejszej strony podręcznika man są: Andrzej Krzysztofowicz (PTM) <[email protected]> i Robert Luberda <[email protected]>.

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ą 3.71 oryginału.