ストリームから整数を取得します。
構文
int _getw(
FILE *stream
);
パラメーター
stream
FILE 構造体へのポインター。
戻り値
_getw は読み取られた整数値を返します。 戻り値 EOF は、エラーまたはファイルの終端を示します。 しかし、EOF の値は有効な整数値であるため、feof または ferror を使用してファイルの終端またはエラー条件を確認します。 stream が NULL の場合は、「パラメーターの検証」で説明されているように、無効なパラメーター ハンドラーが呼び出されます。 実行の継続が許可された場合、 errno が EINVAL に設定され、関数が EOFのセキュリティが強化されたバージョンです。
解説
_getw関数は、streamに関連付けられたファイルからint型の次のバイナリ値を読み取り、関連付けられているファイル ポインター (存在する場合) をインクリメントして、次の未読文字を指します。 _getw は、ストリーム内の項目の特別な配置を想定していません。 int 型のサイズと、int 型内のバイトの並び順がシステム間で異なるため、_getw で移植の問題が発生することがあります。
既定では、この関数のグローバル状態の適用対象は、アプリケーションになります。 この動作を変更するには、「CRT でのグローバル状態」を参照してください。
要件
| ルーチンによって返される値 | 必須ヘッダー |
|---|---|
_getw |
<stdio.h> |
互換性の詳細については、「 Compatibility」を参照してください。
例
// crt_getw.c
// This program uses _getw to read a word
// from a stream, then performs an error check.
#include <stdio.h>
#include <stdlib.h>
int main( void )
{
FILE *stream;
int i;
if( fopen_s( &stream, "crt_getw.txt", "rb" ) )
printf( "Couldn't open file\n" );
else
{
// Read a word from the stream:
i = _getw( stream );
// If there is an error...
if( ferror( stream ) )
{
printf( "_getw failed\n" );
clearerr_s( stream );
}
else
printf( "First data word in file: 0x%.4x\n", i );
fclose( stream );
}
}
入力: crt_getw.txt
Line one.
Line two.
出力
First data word in file: 0x656e694c