_getw
Obtiene un entero de una secuencia.
Sintaxis
int _getw(
FILE *stream
);
Parámetros
stream
Puntero a la estructura de FILE
.
Valor devuelto
_getw
devuelve el valor entero leído. Un valor devuelto de EOF
indica un error o el final del archivo. Pero, como el valor EOF
también es un valor entero legítimo, puede usar feof
o ferror
para comprobar una condición de error o de final de archivo. Si stream
es NULL
, se invoca el controlador de parámetros no válidos, tal y como se describe en Validación de parámetros. Si la ejecución puede continuar, errno
está establecido en EINVAL
y la función devuelve EOF
.
Comentarios
La _getw
función lee el siguiente valor binario de tipo int
del archivo asociado stream
e incrementa el puntero de archivo asociado (si existe alguno) para que apunte al siguiente carácter no leído. _getw
no supone ninguna alineación especial de los elementos de la secuencia. Se pueden producir problemas de portabilidad con _getw
porque el tamaño del tipo int
y el orden de bytes en el tipo int
son distintos en los sistemas.
De manera predeterminada, el estado global de esta función está limitado a la aplicación. Para cambiar este comportamiento, consulte Estado global en CRT.
Requisitos
Routine | Encabezado necesario |
---|---|
_getw |
<stdio.h> |
Para obtener más información sobre compatibilidad, consulte Compatibilidad.
Ejemplo
// 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 );
}
}
Entrada: crt_getw.txt
Line one.
Line two.
Output
First data word in file: 0x656e694c