getwc(3) ワイド文字を FILE ストリームから読み込む

Other Alias

fgetwc

書式

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


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

説明

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

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

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

返り値

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

エラー

通常のエラーに加えて、以下のエラーがある:
EILSEQ
入力ストリームから取得したデータが、正しい文字でない。

準拠

C99, POSIX.1-2001.

注意

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

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

この文書について

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