summaryrefslogtreecommitdiff
path: root/man3/fgetwc.3
blob: 9b4d3df41af69faa7f5a2f851e870042cfd46f8f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
.\" 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 \fBfgetwc\fP() function is the wide-character equivalent
of the \fBfgetc\fP() 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,
it returns WEOF.
If a wide-character conversion error occurs, it sets
\fIerrno\fP to \fBEILSEQ\fP and returns WEOF.
.PP
The \fBgetwc\fP() function or macro functions identically to \fBfgetwc\fP().
It may be implemented as a macro, and may evaluate its argument
more than once.
There is no reason ever to use it.
.PP
For non-locking counterparts, see
.BR unlocked_stdio (3).
.SH "RETURN VALUE"
The \fBfgetwc\fP() function returns the next wide-character from the stream, or
WEOF.
.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.
.SH NOTES
The behaviour of \fBfgetwc\fP() depends on the LC_CTYPE category of the
current locale.
.PP
In the absence of additional information passed to the
.BR fopen ()
call, it is
reasonable to expect that \fBfgetwc\fP()
will actually read a multibyte sequence
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)