Compartir a través de


fgetc, fgetwc

Lea un carácter de una secuencia.

Sintaxis

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

Parámetros

stream
Puntero a la estructura FILE .

Valor devuelto

fgetc devuelve el carácter leído como int o devuelve EOF para indicar un error o el final de archivo. fgetwc devuelve, como , wint_tel carácter ancho que corresponde a la lectura de caracteres o devuelve WEOF para indicar un error o un final del archivo. En el caso de las dos funciones, use feof o ferror diferenciar un error de una condición de fin de archivo. Si se produce un error de lectura, se establece el indicador de error para la secuencia. Si stream es NULL, fgetc e fgetwc invoca el controlador de parámetros no válidos, como se describe en Validación de parámetros. Si la ejecución puede continuar, estas funciones establecen errno en EINVAL y devuelven EOF.

Comentarios

Cada una de estas funciones lee un único carácter de la posición actual del archivo asociado a stream. A continuación, la función aumenta el puntero de archivo asociado (si está definido) para señalar al carácter siguiente. Si el flujo está al final del archivo, se establece la marca de fin de archivo para el flujo.

fgetc equivale a getc, pero solo se implementa como función, no como función y macro.

fgetwces la versión de caracteres anchos de fgetc; lee c como un carácter multibyte o un carácter ancho cuando stream se abre en modo de texto o en modo binario, respectivamente.

Las versiones con el sufijo _nolock son idénticas, salvo que no están protegidas contra interferencias de otros subprocesos.

Para obtener más información sobre el procesamiento de caracteres anchos y caracteres multibyte en modos binarios y de texto, consulte E/S de secuencia Unicode en modos binarios y de texto.

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.

Asignaciones de rutinas de texto genérico

Rutina TCHAR.H _UNICODE y _MBCS no definidos _MBCS definido _UNICODE definido
_fgettc fgetc fgetc fgetwc

Requisitos

Función Encabezado necesario
fgetc <stdio.h>
fgetwc <stdio.h> o <wchar.h>

Para obtener más información sobre compatibilidad, consulte Compatibilidad.

Ejemplo

// 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.

Output

Line one.
Line two.

Consulte también

E/S de secuencia
fputc, fputwc
getc, getwc