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.

  1. 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

[edit] See also