fputwc, putwc - cppreference.com (original) (raw)
| 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.
- 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
#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)