fputwc, putwc
From cppreference.com
C
Concurrency support (C11)
File input/output
Types and objects
Functions
File access
Unformatted input/output
Formatted input
(C11)(C11)(C11)
(C95)(C95)(C95)(C11)(C11)(C11)
(C99)(C99)(C99)(C11)(C11)(C11)
(C99)(C99)(C99)(C11)(C11)(C11)
Direct input/output
Formatted output
(C99)(C11)(C11)(C11)(C11)
(C95)(C95)(C95)(C11)(C11)(C11)(C11)
(C99)(C11)(C11)(C11)(C11)
(C95)(C95)(C95)(C11)(C11)(C11)(C11)
File positioning
Error handling
Operations on files
(C11)
(C11)
Defined in header
<wchar.h>
wint_t fputwc( wchar_t ch, FILE * stream );
(1)
(since C95)
wint_t putwc( wchar_t ch, FILE * stream );
(2)
(since C95)
Writes a wide character ch to the given output stream stream.
2) May be implemented as a macro and may evaluate stream more than once.
[edit] Parameters
ch
-
wide character to be written
stream
-
the output stream
[edit] Return value
Returns a copy of ch on success.
On failure, returns WEOF and sets the error indicator (see ferror() ) on stream.
If an encoding error occurred, additionally sets errno to EILSEQ .
[edit] Example
Run this code
#include <errno.h> #include <locale.h> #include <stdio.h> #include <stdlib.h> #include <wchar.h> int main(void) { setlocale (LC_ALL, "en_US.utf8"); errno = 0; if (fputwc(L'🍌', stdout ) == WEOF) { if (errno == EILSEQ ) puts ("Encoding error in fputwc."); else puts ("I/O error in fputwc."); return EXIT_FAILURE ; } }
Possible output:
🍌
[edit] References
- C23 standard (ISO/IEC 9899:2024):
- 7.31.3.3 The fputwc function (p: 430)
- 7.31.3.8 The putwc function (p: 431-432)
- C17 standard (ISO/IEC 9899:2018):
- 7.29.3.3 The fputwc function (p: 308)
- 7.29.3.8 The putwc function (p: 310)
- C11 standard (ISO/IEC 9899:2011):
- 7.29.3.3 The fputwc function (p: 422-423)
- 7.29.3.8 The putwc function (p: 424)
- C99 standard (ISO/IEC 9899:1999):
- 7.24.3.3 The fputwc function (p: 368)
- 7.24.3.8 The putwc function (p: 370)
[edit] See also
C++ documentation for fputwc