名前

fgetws - ワイド文字の文字列を FILE ストリームから読み込む

書式

#include <wchar.h>
wchar_t *fgetws(wchar_t *ws, int n, FILE *stream);

説明

fgetws() 関数は fgets(3) に対応するワイド文字関数である。 この関数は、最大 n-1 文字のワイド文字を ws が示すワイド文字の配列に読み込み、 終端のヌルワイド文字 (L'\0') を追加する。 この関数は、ワイド文字の改行文字を見つけ、これを格納すると読み込むのを止める。 この関数はストリームの終わりに達した場合も読み込みを止める。
プログラマは、 ws には少なくとも n 文字のワイド文字を 格納できる領域を必ず確保していなければならない。
これらの処理を停止せずに行いたいときは、 unlocked_stdio(3) を参照のこと。

返り値

fgetws() は成功すると ws を返す。 既にストリームの終わりに達しているか、エラーが起きた場合には NULL を返す。

属性

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

準拠

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

注意

fgetws() の動作は、現在のロケールの LC_CTYPE カテゴリーに依存する。
fopen(3) システムコールに渡す追加の情報がない場合には、 fgetws() が実際にはマルチバイトシーケンスをストリームから読み込み、 これをワイド文字に変換すると期待することは適切である。
この関数は信頼できない。なぜなら、入力に含まれるかもしれない ナルワイド文字を適切に処理することができないからである。

関連項目

fgetwc(3), unlocked_stdio(3)

この文書について

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

Recommended readings

Pages related to fgetws you should read also: