getchar
, getwchar
Lee un carácter de entrada estándar.
Sintaxis
int getchar();
wint_t getwchar();
Valor devuelto
Devuelve el carácter leído. Estas funciones esperan la entrada y no devuelven nada hasta que la entrada esté disponible.
Para indicar un error de lectura o una condición de final de archivo, getchar
devuelve EOF
y getwchar
devuelve WEOF
. En el caso de getchar
, use ferror
o feof
para comprobar si hay un error o una condición de fin de archivo.
Comentarios
Cada rutina lee un solo carácter de stdin
y aumenta el puntero de archivo asociado para que señale al carácter siguiente. getchar
es igual que _fgetchar
, pero implementada como función y como macro.
Estas funciones bloquean el subproceso de llamada y son seguras para subprocesos. Para consultar una versión que no sea de bloqueo, vea _getchar_nolock
, _getwchar_nolock
.
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 |
---|---|---|---|
_gettchar |
getchar |
getchar |
getwchar |
Requisitos
Routine | Encabezado necesario |
---|---|
getchar |
<stdio.h> |
getwchar |
<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
, se deben redirigir antes de que las funciones en tiempo de ejecución de C puedan usarlos en aplicaciones para UWP. Para obtener más información sobre compatibilidad, consulte Compatibilidad.
Ejemplo
// crt_getchar.c
// Use getchar to read a line from stdin.
#include <stdio.h>
int main()
{
char buffer[81];
int i, ch;
for (i = 0; (i < 80) && ((ch = getchar()) != EOF)
&& (ch != '\n'); i++)
{
buffer[i] = (char) ch;
}
// Terminate string with a null character
buffer[i] = '\0';
printf( "Input was: %s\n", buffer);
}
This textInput was: This text
Vea también
E/S de secuencia
getc
, getwc
fgetc
, fgetwc
_getch
, _getwch
putc
, putwc
ungetc
, ungetwc