Defined in header <cwchar> | ||
|---|---|---|
std::wint_t fputwc( wchar_t ch, std::FILE* stream ); | ||
std::wint_t putwc( wchar_t ch, std::FILE* stream ); |
Writes a wide character ch to the given output stream stream. putwc() may be implemented as a macro and may evaluate stream more than once.
| ch | - | wide character to be written |
| stream | - | the output stream |
ch on success, WEOF on failure. If an encoding error occurs, errno is set to EILSEQ.
#include <clocale>
#include <cstdio>
#include <cstdlib>
#include <cwchar>
#include <cerrno>
#include <initializer_list>
int main()
{
std::setlocale(LC_ALL, "en_US.utf8");
for (const wchar_t ch :{
L'\u2200', // Unicode name: "FOR ALL"
L'\n',
L'∀',
})
{
errno = 0;
if (std::fputwc(ch, stdout) == WEOF)
{
std::puts(errno == EILSEQ
? "Encoding error in fputwc"
: "I/O error in fputwc"
);
return EXIT_FAILURE;
}
}
return EXIT_SUCCESS;
}Possible output:
∀ ∀
| writes a character to a file stream (function) |
|
| writes a wide string to a file stream (function) |
|
| gets a wide character from a file stream (function) |
|
C documentation for fputwc |
|
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/w/cpp/io/c/fputwc