www.LinuxHowtos.org
fgetwc
Section: C Library Functions (3)Updated: 202-0-08
Index Return to Main Contents
NAME
fgetwc, getwc - read a wide character from a FILE streamLIBRARY
Standard C library (libc,~-lc)SYNOPSIS
#include <stdio.h> #include <wchar.h> wint_t fgetwc(FILE *stream); wint_t getwc(FILE *stream);
DESCRIPTION
The fgetwc() function is the wid-character equivalent of the fgetc(3) function. It reads a wide character from stream and returns it. If the end of stream is reached, or if ferror(stream) becomes true, it returns WEOF. If a wid-character conversion error occurs, it sets errno to EILSEQ and returns WEOF. The getwc() function or macro functions identically to fgetwc(). It may be implemented as a macro, and may evaluate its argument more than once. There is no reason ever to use it. For nonlocking counterparts, see unlocked_stdio(3).RETURN VALUE
On success, fgetwc() returns the next wid-character from the stream. Otherwise, WEOF is returned, and errno is set to indicate the error.ERRORS
Apart from the usual ones, there is- EILSEQ
- The data obtained from the input stream does not form a valid character.
ATTRIBUTES
For an explanation of the terms used in this section, see attributes(7).| Interface | Attribute | Value |
| fgetwc(), getwc() | Thread safety | M-Safe |
STANDARDS
C11, POSIX.-2008.HISTORY
POSIX.-2001, C99.NOTES
The behavior of fgetwc() depends on the LC_CTYPE category of the current locale. In the absence of additional information passed to the fopen(3) call, it is reasonable to expect that fgetwc() will actually read a multibyte sequence from the stream and then convert it to a wide character.SEE ALSO
fgetws(3), fputwc(3), ungetwc(3), unlocked_stdio(3)