_getw
Ruft eine Ganzzahl aus einem Stream ab.
Syntax
int _getw(
FILE *stream
);
Parameter
stream
Zeiger auf die FILE
-Struktur.
Rückgabewert
_getw
gibt den gelesenen Wert in Form einer ganzen Zahl zurück. Ein Rückgabewert von EOF
gibt einen Fehler oder ein Dateiende an. Da der EOF
-Wert jedoch auch ein legitimer Wert einer Ganzzahl ist, verwenden Sie feof
oder ferror
, um eine Dateiendebedingung oder eine Fehlerbedingung zu prüfen. Wenn stream
den Wert NULL
annimmt, wird der Handler für ungültige Parameter aufgerufen, wie in Parameter Validation. Wenn die weitere Ausführung zugelassen wird, wird errno
auf EINVAL
festgelegt, und die Funktion gibt EOF
beschrieben.
Hinweise
Die _getw
Funktion liest den nächsten binärwert des Typs int
aus der Datei, die zugeordnet stream
ist, und erhöht den zugeordneten Dateizeiger (sofern vorhanden), um auf das nächste ungelesene Zeichen zu zeigen. _getw
übernimmt keine spezielle Ausrichtung von Elementen im Datenstrom. Probleme beim Portieren können mit _getw
auftreten, da die Größe des int
-Typs und die Anordnung der Bytes im int
-Typ über Systeme hinweg unterschiedlich sind.
Standardmäßig gilt der globale Zustand dieser Funktion für die Anwendung. Wie Sie dieses Verhalten ändern, erfahren Sie unter Globaler Status in der CRT.
Anforderungen
Routine | Erforderlicher Header |
---|---|
_getw |
<stdio.h> |
Weitere Informationen zur Kompatibilität finden Sie unter Kompatibilität.
Beispiel
// 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 );
}
}
Eingabe: crt_getw.txt
Line one.
Line two.
Output
First data word in file: 0x656e694c