fputwc, putwc - ワイド文字を FILE
ストリームに書き込む
#include <stdio.h>
#include <wchar.h>
wint_t fputwc(wchar_t wc, FILE *stream);
wint_t putwc(wchar_t wc, FILE *stream);
fputwc() 関数は、
fputc(3)
に対応するワイド文字関数である。この
関数は、ワイド文字
wc を
stream
に書き込む。
ferror(stream)
が真になると、この関数は
WEOF を返す。
ワイド文字変換でエラーが発生した場合は、
errno に
EILSEQ
をセットし、
WEOF
を返す。
それ以外の場合では、この関数は
wc を返す。
putwc()
関数あるいはマクロは、
fputwc()
と全く同じ動作をする。
この関数はマクロとして実装されるかもしれないので、引数が複数回評価さ
れるかもしれない。この関数を使う理由はもはや存在しない。
これらの処理を停止せずに行いたいときは、
unlocked_stdio(3)
を参照のこと。
fputwc()
関数は、エラーが起きなければ
wc
を返す。エラーの場合には
WEOF が返り、
errno
にエラーの原因を示す値が設定される。
通常のエラーに加えて、以下のエラーがある:
- EILSEQ
-
wc
からストリームの符号への変換に失敗した。
この節で使用されている用語の説明については、
attributes(7) を参照。
インターフェース |
属性 |
値 |
fputwc(), putwc() |
Thread safety |
MT-Safe |
POSIX.1-2001, POSIX.1-2008, C99.
fputwc()
の動作は現在のロケールの
LC_CTYPE
カテゴリーに依存する。
fopen(3)
システムコールに渡す追加情報がない場合には、
fputwc() は
実際にはワイド文字
wc
に対応するマルチバイトシーケンスを書き込むと
期待してよい。
fgetwc(3),
fputws(3),
unlocked_stdio(3)
この man ページは Linux
man-pages
プロジェクトのリリース
5.10
の一部である。プロジェクトの説明とバグ報告に関する情報は
https://www.kernel.org/doc/man-pages/
に書かれている。