名前 | 形式 | 機能説明 | 戻り値 | エラー | 属性 | 関連項目
#include <stdio.h> include <widec.h>wchar_t *getws(wchar_t *s);
#include <stdio.h> include <wchar.h>wchar_t *fgetws(wchar_t *s, int n, FILE*stream);
getws() 関数は、標準入力ストリーム stdin から拡張 UNIX コード (EUC) 文字の文字列を 読み取り、それをワイド文字に変換し、s が指す配列に書き込みます。 この動作は、復帰改行文字が読み取られるか、ファイルの終端状態になるまで続けられます。 改行文字は破棄され、文字列は wchar_t 型の NULL 文字で終わります。 getws() 関数は、引数を返します。
fgetws() 関数は EUC 文字を stream から読み取り、それをワイド文字に変換し、s が指す配列に書き込みます。この動作は、n-1 文字まで読み取られるか、復帰改行文字が読み取られ s に変換されるか、ファイルの終端状態になると停止します。文字列は wchar_t 型の NULL 文字で終了します。 fgetws() 関数は、最初の引数を返します。
ファイルの終端状態になって文字が何も読み取られなくなると、文字は s に転送されずに、NULL ポインタが返されます。 読み取りエラーが発生した場合、たとえば読み取り用にオープンされていないファイル上で これらの関数を使おうとした場合には NULL ポインタが返されます。 それ以外の場合は s が返されます。
データを読み取る必要があるとき、以下の条件で fgetws() は異常終了します。
ファイルは通常ファイルで、対応する stream に関連するオフセット最大値、またはそれ以上で作成しようとした
次の属性については attributes(5) のマニュアルページを参照してください。
属性タイプ | 属性値 |
---|---|
MT レベル | MT-Safe |