Compartir a través de


_fgetchar, _fgetwchar

Lee un carácter de una cadena stdin.

Sintaxis

int _fgetchar( void );
wint_t _fgetwchar( void );

Valor devuelto

_fgetchar devuelve el carácter leído como int o devuelve EOF para indicar un error o el final del archivo. _fgetwchar devuelve, como , wint_tel carácter ancho que corresponde al carácter leído 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.

Comentarios

Estas funciones leen un solo carácter de stdin. 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.

_fgetchar equivale a fgetc( stdin ). También es equivalente a getchar, pero solo se implementa como una función, en lugar de como una función y una macro. _fgetwchar es la versión con caracteres anchos de _fgetchar.

Estas funciones no son compatibles con el estándar ANSI.

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
_fgettchar _fgetchar _fgetchar _fgetwchar

Requisitos

Función Encabezado necesario
_fgetchar <stdio.h>
_fgetwchar <stdio.h> o <wchar.h>

La consola no se admite en las aplicaciones de la Plataforma universal de Windows (UWP). Los identificadores de flujo estándar asociados a la consola (stdin, stdout, y stderr) deben redirigirse antes de que las funciones en tiempo de ejecución de C puedan usarlas en aplicaciones para UWP. Para obtener más información sobre compatibilidad, consulte Compatibilidad.

Ejemplo

// crt_fgetchar.c
// This program uses _fgetchar 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 )
{
   char buffer[81];
   int  i, ch;

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

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

      Line one.
Line two.Line one.
Line two.

Consulte también

E/S de secuencia
fputc, fputwc
getc, getwc