EN JA
FGETWS(3)
FGETWS(3) FreeBSD Library Functions Manual FGETWS(3)

名称

fgetwsストリームからワイド文字の 1 行を取得する

ライブラリ

Standard C Library (libc, -lc)

書式

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

wchar_t *
fgetws( wchar_t * restrict ws, int n, FILE * restrict fp);

解説

fgetws() 関数は、与えられた fp から、最大で n で指定された文字数より 1 だけ少ない数の文字を読み込み、ワイド文字列 ws に格納します。読み込みは、改行文字が見つかったり、ファイルの終了あるいはエラーが見つかったりした場合に停止します。もし、改行文字があれば、保持されます。任意の文字を読み込んでエラーが発生しなかった場合、文字列の最後に‘ \0’文字が追加されます。

戻り値

成功して終了すると、 fgetws() は ws を返します。文字を読み込む前にファイルの終了に達すると、 fgetws() は NULL を返します。このとき、バッファの内容は変化しません。エラーが発生すると fgetws() は NULL を返し、バッファの内容は不定になります。 fgetws() 関数はファイルの終了とエラーとを区別しません。どちらが起こったかを判断するには、呼び出し側が feof(3)ferror(3) を使用しなければなりません。

エラー

fgetws() 関数はつぎの場合に失敗します:
[ EBADF]
与えられた fp 引数が、読み込み可能なストリームではありません。
[ EILSEQ]
入力ストリームから得られたデータは有効なマルチバイト文字を形成しません。

関数 fgetws() が失敗すると、ルーチン fflush(3), fstat(2), read(2) または malloc(3) に明記されたエラーのいずれかが errno に設定されます。

関連項目

feof(3), ferror(3), fgets(3)

規格

fgetws() 関数は、 IEEE Std 1003.1-2001 (“POSIX.1”) に適合しています。
August 6, 2002 FreeBSD