Scroll to navigation

fgetws(3) Library Functions Manual fgetws(3)

NAZWA

fgetws - odczytuje łańcuch szerokich znaków ze strumienia FILE

BIBLIOTEKA

Standardowa biblioteka C (libc, -lc)

SKŁADNIA

#include <wchar.h>
wchar_t *fgetws(wchar_t ws[restrict .n], int n, FILE *restrict 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 wiersza. 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.

ATRYBUTY

Informacje o pojęciach używanych w tym rozdziale można znaleźć w podręczniku attributes(7).

Interfejs Atrybut Wartość
fgetws() Bezpieczeństwo wątkowe MT-bezpieczne

STANDARDY

C11, POSIX.1-2008.

HISTORIA

POSIX.1-2001, C99.

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.

ZOBACZ TAKŻE

fgetwc(3), unlocked_stdio(3)

TŁUMACZENIE

Autorami polskiego tłumaczenia niniejszej strony podręcznika są: Andrzej Krzysztofowicz <ankry@green.mf.pg.gda.pl>, Robert Luberda <robert@debian.org> i Michał Kułach <michal.kulach@gmail.com>

Niniejsze tłumaczenie jest wolną dokumentacją. Bliższe informacje o warunkach licencji można uzyskać zapoznając się z GNU General Public License w wersji 3 lub nowszej. Nie przyjmuje się ŻADNEJ ODPOWIEDZIALNOŚCI.

Błędy w tłumaczeniu strony podręcznika prosimy zgłaszać na adres listy dyskusyjnej manpages-pl-list@lists.sourceforge.net.

2 maja 2024 r. Linux man-pages 6.8