FGETWC
Section: Linux Programmer's Manual (3)
Updated: 2015-08-08
Page Index
NAME
fgetwc, getwc - read a wide character from a FILE stream
SYNOPSIS
#include <stdio.h>
#include <wchar.h>
wint_t fgetwc(FILE *stream);
wint_t getwc(FILE *stream);
DESCRIPTION
The
fgetwc()
function is the wide-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 wide-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
The
fgetwc()
function returns the next wide-character
from the stream, or
WEOF.
In the event of an error,
errno
is set to indicate the cause.
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 | MT-Safe
|
CONFORMING TO
POSIX.1-2001, POSIX.1-2008, 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)
COLOPHON
This page is part of release 5.10 of the Linux
man-pages
project.
A description of the project,
information about reporting bugs,
and the latest version of this page,
can be found at
https://www.kernel.org/doc/man-pages/.