]>
Commit | Line | Data |
---|---|---|
fea681da MK |
1 | .\" Copyright (c) Bruno Haible <haible@clisp.cons.org> |
2 | .\" | |
89e3ffe9 | 3 | .\" %%%LICENSE_START(GPLv2+_DOC_ONEPARA) |
fea681da MK |
4 | .\" This is free documentation; you can redistribute it and/or |
5 | .\" modify it under the terms of the GNU General Public License as | |
6 | .\" published by the Free Software Foundation; either version 2 of | |
7 | .\" the License, or (at your option) any later version. | |
fe382ebf | 8 | .\" %%%LICENSE_END |
fea681da MK |
9 | .\" |
10 | .\" References consulted: | |
11 | .\" GNU glibc-2 source code and manual | |
12 | .\" Dinkumware C library reference http://www.dinkumware.com/ | |
008f1ecc | 13 | .\" OpenGroup's Single UNIX specification http://www.UNIX-systems.org/online.html |
fea681da MK |
14 | .\" ISO/IEC 9899:1999 |
15 | .\" | |
4b8c67d9 | 16 | .TH FPUTWC 3 2017-09-15 "GNU" "Linux Programmer's Manual" |
fea681da | 17 | .SH NAME |
a4c0544d | 18 | fputwc, putwc \- write a wide character to a FILE stream |
fea681da MK |
19 | .SH SYNOPSIS |
20 | .nf | |
21 | .B #include <stdio.h> | |
fea681da | 22 | .B #include <wchar.h> |
68e4db0a | 23 | .PP |
fea681da MK |
24 | .BI "wint_t fputwc(wchar_t " wc ", FILE *" stream ); |
25 | .BI "wint_t putwc(wchar_t " wc ", FILE *" stream ); | |
26 | .fi | |
27 | .SH DESCRIPTION | |
60a90ecd MK |
28 | The |
29 | .BR fputwc () | |
30 | function is the wide-character | |
31 | equivalent of the | |
a4c0544d | 32 | .BR fputc (3) |
60a90ecd | 33 | function. |
c13182ef MK |
34 | It writes the wide character \fIwc\fP to \fIstream\fP. |
35 | If | |
cab87712 MK |
36 | \fIferror(stream)\fP becomes true, it returns |
37 | .BR WEOF . | |
d0f17b57 | 38 | If a wide-character conversion error occurs, |
cab87712 MK |
39 | it sets \fIerrno\fP to \fBEILSEQ\fP and returns |
40 | .BR WEOF . | |
2b9b829d | 41 | Otherwise, it returns \fIwc\fP. |
fea681da | 42 | .PP |
60a90ecd MK |
43 | The |
44 | .BR putwc () | |
45 | function or macro functions identically to | |
46 | .BR fputwc (). | |
fea681da | 47 | It may be implemented as a macro, and may evaluate its argument |
c13182ef MK |
48 | more than once. |
49 | There is no reason ever to use it. | |
fea681da | 50 | .PP |
24b74457 | 51 | For nonlocking counterparts, see |
fea681da | 52 | .BR unlocked_stdio (3). |
47297adb | 53 | .SH RETURN VALUE |
60a90ecd MK |
54 | The |
55 | .BR fputwc () | |
cab87712 MK |
56 | function returns \fIwc\fP if no error occurred, or |
57 | .B WEOF | |
58 | to indicate an error. | |
1726c2f9 MK |
59 | In the event of an error, |
60 | .I errno | |
61 | is set to indicate the cause. | |
fea681da MK |
62 | .SH ERRORS |
63 | Apart from the usual ones, there is | |
64 | .TP | |
65 | .B EILSEQ | |
66 | Conversion of \fIwc\fP to the stream's encoding fails. | |
83613756 MS |
67 | .SH ATTRIBUTES |
68 | For an explanation of the terms used in this section, see | |
69 | .BR attributes (7). | |
70 | .TS | |
71 | allbox; | |
72 | lbw17 lb lb | |
73 | l l l. | |
74 | Interface Attribute Value | |
75 | T{ | |
76 | .BR fputwc (), | |
77 | .BR putwc () | |
78 | T} Thread safety MT-Safe | |
79 | .TE | |
847e0d88 | 80 | .sp 1 |
47297adb | 81 | .SH CONFORMING TO |
5de8b616 | 82 | POSIX.1-2001, POSIX.1-2008, C99. |
fea681da | 83 | .SH NOTES |
d9bfdb9c | 84 | The behavior of |
60a90ecd | 85 | .BR fputwc () |
1274071a MK |
86 | depends on the |
87 | .B LC_CTYPE | |
88 | category of the | |
fea681da MK |
89 | current locale. |
90 | .PP | |
c13182ef | 91 | In the absence of additional information passed to the |
fb186734 | 92 | .BR fopen (3) |
1e321034 | 93 | call, it is |
60a90ecd MK |
94 | reasonable to expect that |
95 | .BR fputwc () | |
96 | will actually write the multibyte | |
fea681da | 97 | sequence corresponding to the wide character \fIwc\fP. |
47297adb | 98 | .SH SEE ALSO |
fea681da MK |
99 | .BR fgetwc (3), |
100 | .BR fputws (3), | |
101 | .BR unlocked_stdio (3) |