Namespaces
Variants

fputwc, putwc

From cppreference.net
< c ‎ | io
定義先ヘッダ <wchar.h>
wint_t fputwc ( wchar_t ch, FILE * stream ) ;
(1) (C95以降)
wint_t putwc ( wchar_t ch, FILE * stream ) ;
(2) (C95以降)

指定された出力ストリーム stream にワイド文字 ch を書き込みます。

2) マクロとして実装される可能性があり、 stream を複数回評価する可能性があります。

目次

パラメータ

ch - 書き込むワイド文字
stream - 出力ストリーム

戻り値

成功時に ch のコピーを返します。

失敗時には WEOF を返し、 error インジケータを設定します( ferror() を参照)。 stream に対して設定されます。

エンコーディングエラーが発生した場合、さらに errno EILSEQ に設定します。

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

出力例:

🍌

参考文献

  • C23規格 (ISO/IEC 9899:2024):
  • 7.31.3.3 fputwc関数 (p: 430)
  • 7.31.3.8 putwc関数 (p: 431-432)
  • C17規格 (ISO/IEC 9899:2018):
  • 7.29.3.3 fputwc関数 (p: 308)
  • 7.29.3.8 putwc関数 (p: 310)
  • C11標準 (ISO/IEC 9899:2011):
  • 7.29.3.3 fputwc関数 (p: 422-423)
  • 7.29.3.8 putwc関数 (p: 424)
  • C99規格 (ISO/IEC 9899:1999):
  • 7.24.3.3 fputwc関数 (p: 368)
  • 7.24.3.8 putwc関数 (p: 370)

関連項目

ファイルストリームに文字を書き込む
(関数)
(C95)
ファイルストリームにワイド文字列を書き込む
(関数)
ファイルストリームからワイド文字を取得する
(関数)