Scroll to navigation

FGETWC(3) Podręcznik programisty Linuksa FGETWC(3)

NAZWA

fgetwc, getwc - odczytuje szeroki znak ze strumienia FILE

SKŁADNIA

#include <stdio.h>

#include <wchar.h> wint_t fgetwc(FILE *stream); wint_t getwc(FILE *stream);

OPIS

Funkcja fgetwc() jest szerokoznakowym odpowiednikiem funkcji fgetc(3). Wczytuje szeroki znak ze stream i zwraca go. W razie natrafienia na koniec strumienia lub gdy ferror(stream) stanie się prawdziwe, zwraca WEOF. Jeśli wystąpi błąd konwersji znaku, ustawia errno na EILSEQ i również zwraca WEOF.

Funkcja lub makro getwc() zachowuje się identycznie jak fgetwc(). Może być zaimplementowane jako makro, więc może wskutek tego rozwijać swój argument więcej niż raz. Nie ma żadnego powodu, aby tej funkcji/makra używać.

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

WARTOŚĆ ZWRACANA

Funkcja fgetwc() zwraca następny szeroki znak pobrany ze strumienia lub WEOF. W przypadku błędu ustawiane jest errno, wskazując na przyczynę błędu.

BŁĘDY

Oprócz zwykłych jest jeszcze
EILSEQ
Dane otrzymane ze strumienia wejściowego nie tworzą prawidłowego znaku.

ATRYBUTY

Informacje o pojęciach używanych w tym rozdziale można znaleźć w podręczniku attributes(7).
Interfejs Atrybut Wartość
fgetwc(), getwc() Bezpieczeństwo wątkowe MT-Safe

ZGODNE Z

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

UWAGI

Zachowanie fgetwc() 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 fgetwc() faktycznie odczyta wielobajtowy łańcuch ze strumienia i przetworzy go na szeroki znak.

ZOBACZ TAKŻE

fgetws(3), fputwc(3), ungetwc(3), unlocked_stdio(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.

2015-08-08 GNU