Scroll to navigation

std::fputwc(3) C++ Standard Libary std::fputwc(3)

NAME

std::fputwc - std::fputwc

Synopsis


Defined in header <cwchar>
std::wint_t fputwc( wchar_t ch, std::FILE* stream ); (1)
std::wint_t putwc( wchar_t ch, std::FILE* stream ); (2)


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.

Parameters


ch - wide character to be written
stream - the output stream

Return value


ch on success, WEOF on failure. If an encoding error occurs, errno is set to EILSEQ.

Example

// Run this code


#include <cerrno>
#include <clocale>
#include <cstdio>
#include <cstdlib>
#include <cwchar>
#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'∀',
})
{
if (errno = 0; 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:



See also


fputc writes a character to a file stream
putc (function)
fputws writes a wide string to a file stream
(function)
fgetwc gets a wide character from a file stream
getwc (function)
C documentation for
fputwc

2024.06.10 http://cppreference.com