GETWC(3)

NAME
fgetwc, fgetwc_l, getwc, getwc_l, getwchar, getwchar_l - get next wide character from input stream

LIBRARY
libc

SYNOPSIS
#include <stdio.h>
#include <wchar.h>
wint_t
fgetwc(FILE *stream);
wint_t
getwc(FILE *stream);
wint_t
getwchar(void);
#include <xlocale.h>
wint_t
fgetwc_l(FILE *stream, locale_t locale);
wint_t
getwc_l(FILE *stream, locale_t locale);
wint_t
getwchar_l(locale_t locale);

DESCRIPTION
The fgetwc() and fgetwc_l() functions obtain the next input wide character (if present) from the stream pointed at by stream, or the next character pushed back on the stream via ungetwc(3) or ungetwc_l(3).

The getwc() and getwc_l() functions act essentially identically to fgetwc() and fgetwc_l().

The getwchar() and getwchar_l() functions are equivalent to getwc() and getwc_l() with the argument stdin.

The fgetwc_l(), getwc_l(), and getwchar_l() functions take an explicit locale argument, whereas the fgetwc(), getwc(), and getwchar() functions use the current global or per-thread locale.

RETURN VALUES
If successful, these routines return the next wide character from the stream. If the stream is at end-of-file or a read error occurs, the routines return WEOF. The routines feof(3) and ferror(3) must be used to distinguish between end-of-file and error. If an error occurs, the global variable errno is set to indicate the error. The end-of-file condition is remembered, even on a terminal, and all subsequent attempts to read will return WEOF until the condition is cleared with clearerr(3).

SEE ALSO
ferror(3), fopen(3), fread(3), getc(3), putwc(3), stdio(3), ungetwc(3), xlocale(3)

STANDARDS
The fgetwc(), getwc() and getwchar() functions conform to isoC-99.