Manpages

名 前

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 を 返 す 。

準 拠

C99, POSIX.1−2001.

注 意

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

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

関 連 項 目

fgetwc(3), unlocked_stdio(3)

こ の 文 書 に つ い て

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