man-pages/man3/fgetwc.3

87 lines
2.2 KiB
Groff
Raw Normal View History

2004-11-03 13:51:07 +00:00
.\" Copyright (c) Bruno Haible <haible@clisp.cons.org>
.\"
.\" This is free documentation; you can redistribute it and/or
.\" modify it under the terms of the GNU General Public License as
.\" published by the Free Software Foundation; either version 2 of
.\" the License, or (at your option) any later version.
.\"
.\" References consulted:
.\" GNU glibc-2 source code and manual
.\" Dinkumware C library reference http://www.dinkumware.com/
.\" OpenGroup's Single Unix specification
.\" http://www.UNIX-systems.org/online.html
.\" ISO/IEC 9899:1999
.\"
.\" Modified Tue Oct 16 23:18:40 BST 2001 by John Levon <moz@compsoc.man.ac.uk>
.TH FGETWC 3 1999-07-25 "GNU" "Linux Programmer's Manual"
.SH NAME
fgetwc, getwc \- read a wide character from a FILE stream
.SH SYNOPSIS
.nf
.B #include <stdio.h>
.br
.B #include <wchar.h>
.sp
.BI "wint_t fgetwc(FILE *" stream );
.BI "wint_t getwc(FILE *" stream );
.fi
.SH DESCRIPTION
The
.BR fgetwc ()
function is the wide-character equivalent
of the
2007-05-21 21:23:17 +00:00
.BR fgetc (3)
function.
It reads a wide character from \fIstream\fP and returns it.
If the end of stream is reached, or if \fIferror(stream)\fP becomes true,
2007-07-09 20:43:38 +00:00
it returns
.BR WEOF .
If a wide-character conversion error occurs, it sets
2007-07-09 20:43:38 +00:00
\fIerrno\fP to \fBEILSEQ\fP and returns
.BR WEOF .
2004-11-03 13:51:07 +00:00
.PP
The
.BR getwc ()
function or macro functions identically to
.BR fgetwc ().
2004-11-03 13:51:07 +00:00
It may be implemented as a macro, and may evaluate its argument
more than once.
There is no reason ever to use it.
2004-11-03 13:51:07 +00:00
.PP
For nonlocking counterparts, see
2004-11-03 13:51:07 +00:00
.BR unlocked_stdio (3).
.SH "RETURN VALUE"
The
.BR fgetwc ()
function returns the next wide-character
2007-07-09 20:43:38 +00:00
from the stream, or
.BR WEOF .
2004-11-03 13:51:07 +00:00
.SH ERRORS
Apart from the usual ones, there is
.TP
.B EILSEQ
The data obtained from the input stream does not
form a valid character.
.SH "CONFORMING TO"
C99, POSIX.1-2001.
2004-11-03 13:51:07 +00:00
.SH NOTES
The behavior of
.BR fgetwc ()
2007-06-22 18:25:23 +00:00
depends on the
.B LC_CTYPE
category of the
2004-11-03 13:51:07 +00:00
current locale.
.PP
In the absence of additional information passed to the
.BR fopen (3)
2005-10-20 15:11:10 +00:00
call, it is
reasonable to expect that
.BR fgetwc ()
2006-12-27 03:54:41 +00:00
will actually read a multibyte sequence
2004-11-03 13:51:07 +00:00
from the stream and then convert it to a wide character.
.SH "SEE ALSO"
.BR fgetws (3),
.BR fputwc (3),
.BR ungetwc (3),
.BR unlocked_stdio (3)