table of contents
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. Wczytuje ona 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 ona errno na EILSEQ i również zwraca WEOF.
Funkcja lub makro getwc zachowuje się identycznie jak fgetwc. Gdy getwc jest zaimplementowane jako makro, 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.
BŁĘDY¶
Oprócz zwykłych jest jeszcze
- EILSEQ
- Dane otrzymane ze strumienia wejściowego nie tworzą prawidłowego znaku.
ZGODNE Z¶
ISO/ANSI C, UNIX98
UWAGI¶
Zachowanie fgetwc zależy od ustawienia kategorii LC_CTYPE aktualnego locale.
W przypadku nieprzekazania dodatkowych informacji przy wywołaniu fopen, rozsądne jest oczekiwanie, że fgetwc faktycznie odczyta wielobajtowy łańcuch ze strumienia i przetworzy go na szeroki znak.
ZOBACZ TAKŻE¶
1999-07-25 | GNU |