Spec-Zone.ru › C++

std::fputwc

Определено в заголовке <cwchar>
std::wint_t fputwc( wchar_t ch, std::FILE* stream );
(1)
std::wint_t putwc( wchar_t ch, std::FILE* stream );
(2)

Записывает широкий символ ch в заданный поток вывода stream.

2) Может быть реализовано как макрос и может вычислять stream более одного раза.

Параметры

ch - широкий символ для записи
stream - поток вывода

Возвращаемое значение

ch при успехе, WEOF при ошибке. Если произошла ошибка кодирования, errno устанавливается в EILSEQ.

Пример

#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;
}

Возможный вывод:

∀
∀

См. также

fputcputc
записывает символ в поток файла
(функция)
fputws
записывает широкую строку в поток файла
(функция)
fgetwcgetwc
считывает широкий символ из потока файла
(функция)
Документация C для fputwc

© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/w/cpp/io/c/fputwc

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API