_getw
Obtém um inteiro de um fluxo.
Sintaxe
int _getw(
FILE *stream
);
Parâmetros
stream
Ponteiro para a estrutura FILE
.
Valor retornado
_getw
retorna o valor inteiro lido. Um valor retornado de EOF
indica um erro ou o final do arquivo. No entanto, como o valor EOF
também é um valor inteiro legítimo, use feof
ou ferror
para verificar uma condição de erro ou o final do arquivo. Se stream
for NULL
, o manipulador de parâmetro inválido será chamado, conforme descrito em Validação de parâmetro. Se a execução tiver permissão para continuar, errno
será definido como EINVAL
e a função retornará EOF
.
Comentários
A _getw
função lê o próximo valor binário do tipo int
do arquivo associado stream
e incrementa o ponteiro do arquivo associado (se houver) para apontar para o próximo caractere não lido. _getw
não pressupõe nenhum alinhamento especial de itens no fluxo. Problemas de portabilidade podem ocorrer com _getw
porque o tamanho do tipo int
e a ordenação de bytes dentro do tipo int
diferem entre sistemas.
Por padrão, o estado global dessa função tem como escopo o aplicativo. Para alterar esse comportamento, confira Estado global no CRT.
Requisitos
Rotina | Cabeçalho necessário |
---|---|
_getw |
<stdio.h> |
Para obter informações sobre compatibilidade, consulte Compatibilidade.
Exemplo
// 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.
Saída
First data word in file: 0x656e694c