FGETWC(3)

名前
fgetwc, getwc - ワイド文字を FILE ストリームから読み込む

書式
#include <stdio.h>
#include <wchar.h>

wint_t fgetwc(FILE *stream);
wint_t getwc(FILE *stream);

説明
fgetwc() 関数は、 fgetc(3) に対応するワイド文字関数である。 この関数は stream からワイド文字を 1 文字読み込み、これを返す。 ストリームの終端に達するか、ferror(stream) が真になった場合には、 この関数は WEOF を返す。 ワイド文字変換でエラーが発生した場合は、 errno に EILSEQ をセットし、 WEOF を返す。

getwc() 関数あるいはマクロは、 fgetwc() と全く同じ動作をする。 この関数はマクロとして実装されるかもしれないので、引数が複数回評価さ れるかもしれない。この関数を使う理由はもはや存在しない。

これらの処理を停止せずに行いたいときは、 unlocked_stdio(3) を参照のこと。

返り値
fgetwc() 関数はストリームの次のワイド文字か、あるいは WEOF を返す。 エラーが起こった場合、 errno にエラーの原因を示す値が設定される。

エラー
通常のエラーに加えて、以下のエラーがある:

EILSEQ
    入力ストリームから取得したデータが、正しい文字でない。

属性
この節で使用されている用語の説明については、 attributes(7) を参照。
インターフェース | 属性 | 値
fgetwc(), getwc() | Thread safety | MT-Safe

準拠
POSIX.1-2001, POSIX.1-2008, C99.

注意
fgetwc() の動作は、現在のロケールの LC_CTYPE カテゴリーに依存する。

fopen(3) システムコールに渡す追加情報がない場合には、 fgetwc() が実際 にはマルチバイトシーケンスをストリームから読み込み、これをワイド文字に 変換すると期待することは適切である。

関連項目
fgetws(3), fputwc(3), ungetwc(3), unlocked_stdio(3)

この文書について
この man ページは Linux man-pages プロジェクトのリリース 5.10 の一部である。プロジェクトの説明とバグ報告に関する情報は https://www.kernel.org/doc/man-pages/ に書かれている。