_getw
Obtém um inteiro de um fluxo.
Sintaxe
int _getw(
FILE *stream
);
Parâmetros
fluxo
Ponteiro para a estrutura FILE.
Valor Retornado
_getw retorna o valor inteiro lido. Um valor de retorno de EOF indica um erro ou um fim de arquivo. No entanto, como o valor de EOF também é um valor inteiro legítimo, use feof ou referenciador para verificar uma condição de fim de arquivo ou de erro. Se o fluxo for nulo, o manipulador de parâmetro inválido será invocado, conforme descrito em validação de parâmetro. Se a execução puder continuar, errno será definido como EINVAL e a função retornará EOF.
Comentários
A função _getw lê o próximo valor binário do tipo int
a partir do arquivo associado ao fluxo e incrementa o ponteiro de arquivo associado (se houver) para apontar para o próximo caractere não lido. _getw não assume nenhum alinhamento especial de itens no fluxo. Problemas com portabilidade podem ocorrer com _getw porque o tamanho do int
tipo e a ordenação de bytes dentro do int
tipo diferem entre sistemas.
Por padrão, o estado global dessa função tem como escopo o aplicativo. Para alterar isso, consulte estado global no CRT.
Requisitos
Rotina | Cabeçalho necessário |
---|---|
_getw | <stdio. h> |
Para obter mais 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