putwc | Programming Place Plus C言語編 標準ライブラリのリファレンス

トップページC言語編標準ライブラリのリファレンス(名前順)

トップページC言語編標準ライブラリのリファレンス(ヘッダ別)


putwc関数

概要

出力ストリームへワイド文字を1文字出力する。

ヘッダ

stdio.hwchar.h

形式

wint_t putwc(wchar_t c, FILE* stream);

引数

c

出力するワイド文字。

stream

出力ストリーム。

戻り値

成功すれば、c がそのまま返される。失敗時は WEOF が返される。

詳細

マクロとして実装されている可能性があるという点を除くと、fputwc関数と同じである。
書き込みエラーが発生した場合は、ストリームのエラー指示子がセットされる。表現形式エラーが発生した場合には、errnoEILSEQ を格納する。

注意

マクロとして実装されている可能性があるので、putwc(c++, fp); のような、マクロの使用上問題になり得るような使い方をしてはならない。

使用例

#include <stdio.h>
#include <stdlib.h>

int main(void)
{
    // 以下の fopen関数の第2引数は、Visual Studio 2017 の機能を使っている。
    // 「, ccs=***」のような表記によって、開かれたストリームに入出力するデータを、
    // そのエンコーディング形式で変換する。

    FILE* fp = fopen("test.txt", "w, ccs=UTF-16LE");
    if (fp == NULL) {
        fputs("ファイルオープンに失敗しました。\n", stderr);
        exit(EXIT_FAILURE);
    }

    putwc(L'あ', fp);
    if (ferror(fp)) {
        fputs("書き込み中にエラーが発生しました。\n", stderr);
        exit(EXIT_FAILURE);
    }

    if (fclose(fp) == EOF) {
        fputs("ファイルクローズに失敗しました。\n", stderr);
        exit(EXIT_FAILURE);
    }
}

実行結果(標準出力)

実行結果(test.txt)

関連

マルチバイト文字版は、putc関数である。
fputwc関数は同じ効果を持つが、必ず関数として実装されている。
標準出力に特化した、putwchar関数がある。
文字列版は putws関数のように思えるが、そのような関数はない。fputws関数を使う。

解説章


参考リンク


更新履歴

’2019/2/12 VisualStudio 2015 の対応終了。

’2018/4/12 全体的に文章を見直し修正。

’2018/1/22 新規作成。



標準ライブラリのリファレンス(名前順)のトップページへ

標準ライブラリのリファレンス(ヘッダ別)のトップページへ

C言語編のトップページへ

Programming Place Plus のトップページへ



はてなブックマーク に保存 Pocket に保存 Facebook でシェア
X で ポストフォロー LINE で送る noteで書く
rss1.0 取得ボタン RSS 管理者情報 プライバシーポリシー
先頭へ戻る