Compartilhar via


fgetc, fgetwc

Lê um caractere de um fluxo.

int fgetc( 
   FILE *stream 
);
wint_t fgetwc( 
   FILE *stream 
);

Parâmetros

  • stream
    Ponteiro a estrutura de FILE .

Valor de retorno

fgetc retorna o caractere lido como int ou retorna EOF para indicar um erro ou uma extremidade de arquivo. retornafgetwc , como wint_t, o caractere largo que corresponde ao caractere ler ou retorna WEOF para indicar um erro ou uma extremidade de arquivo. Para ambas as funções, use feof ou ferror para distinguir entre um erro e uma condição de fim de arquivo. Se ocorre um erro de leitura, o indicador de erro para o fluxo será definido. Se stream é NULL, fgetc e fgetwc invoca o manipulador inválido do parâmetro, conforme descrito em Validação do parâmetro. Se a execução puder continuar, essas funções definirão errno como EINVAL e retornarão EOF.

Comentários

Cada uma dessas funções ler um único caractere da posição atual do arquivo associado com stream. A função incrementa o ponteiro do arquivo associado (se definido) para indicar o próximo caractere. Se o fluxo estiver no final do arquivo, o indicador de fim de arquivo para o fluxo é definido.

fgetc é equivalente a getc, mas implementado apenas como uma função, em vez de como uma função e uma macro.

fgetwc é a versão de ampla caractere de fgetc; ler c como um caractere multibyte ou um caractere largo de acordo com o que stream está aberto no modo de texto ou no modo binário.

As versões com o sufixo _nolock são idênticas, exceto pelo fato de que não são protegidas contra interferência de outros threads.

Para obter mais informações sobre como processar caracteres amplos e caracteres multibyte nos modos de texto e binários, consulte Fluxo de E/S Unicode nos modos de texto e binários.

Mapeamentos da rotina de texto genérico

Rotina TCHAR.H

_UNICODE & _MBCS não definido

_MBCS definido

_UNICODE definido

_fgettc

fgetc

fgetc

fgetwc

Requisitos

Função

Cabeçalho necessário

fgetc

<stdio.h>

fgetwc

<stdio.h> ou <wchar.h>

Para informações adicionais de compatibilidade, consulte Compatibilidade na Introdução.

Exemplo

// crt_fgetc.c
// This program uses getc to read the first
// 80 input characters (or until the end of input)
// and place them into a string named buffer.
 

#include <stdio.h>
#include <stdlib.h>

int main( void )
{
   FILE *stream;
   char buffer[81];
   int  i, ch;

   // Open file to read line from:
   fopen_s( &stream, "crt_fgetc.txt", "r" );
   if( stream == NULL )
      exit( 0 );

   // Read in first 80 characters and place them in "buffer": 
   ch = fgetc( stream );
   for( i=0; (i < 80 ) && ( feof( stream ) == 0 ); i++ )
   {
      buffer[i] = (char)ch;
      ch = fgetc( stream );
   }

   // Add null to end string 
   buffer[i] = '\0';
   printf( "%s\n", buffer );
   fclose( stream );
}

Entrada: crt_fgetc.txt

Line one.
Line two.

Saída

Line one.
Line two.

Equivalência do .NET Framework

Consulte também

Referência

E/S de fluxo

fputc, fputwc

getc, getwc