Funkcja getwc () w C ++ odczytuje następny szeroki znak z podanego strumienia wejściowego.
Funkcja getwc () jest podobna do fgetwc (). Główną różnicą między nimi jest to, że getwc () można zaimplementować jako makro.
Jest zdefiniowany w pliku nagłówkowym.
getwc () Prototyp
wint_t getwc (PLIK * strumień);
Funkcja getwc () przyjmuje jako argument strumień strumienia pliku i zwraca następny szeroki znak z danego strumienia jako wartość typu szeroka liczba całkowita.
getwc () Parametry
- stream: strumień pliku do odczytania szerokiego znaku.
getwc () Zwracana wartość
- Po pomyślnym zakończeniu funkcja fgetwc () zwraca odczytany znak szeroki.
- W przypadku niepowodzenia zwraca WEOF . Jeśli wystąpił błąd kodowania, ustawia errno na EILSEQ .
Przykład: Jak działa funkcja getwc ()?
#include #include #include #include using namespace std; int main() ( wint_t c; FILE *fp = fopen("file.txt","w+"); setlocale(LC_ALL, "en_US.UTF-8"); wchar_t str() = L"u0102u01A5u01A5u0139u011B";// equivalent to ĂƥƥĹě fputws(str, fp); rewind(fp); if (fp) ( while(!feof(fp)) ( c = getwc(fp); putwchar(c); ) ) else wcout << L"Error opening file" << endl; fclose(fp); return 0; )
Po uruchomieniu programu możliwe wyjście to:
ĂƥƥŁě