Compartir vía


_getche, _getwche

Obtiene un carácter de la consola con repetición.

Importante

Esta API no se puede usar en aplicaciones que se ejecutan en Windows en tiempo de ejecución. Para obtener más información, vea Funciones de CRT no admitidas en aplicaciones de la Plataforma universal de Windows.

Sintaxis

int _getche( void );
wint_t _getwche( void );

Valor devuelto

Devuelve el carácter leído. No se devuelve ningún error.

Comentarios

Las funciones _getche y _getwche leen un solo carácter de la consola con repetición, es decir, el carácter se muestra en la consola. Ninguna de estas funciones se puede usar para leer CTRL+C. Cuando _getche o _getwche lee una tecla de función o una tecla de dirección, se debe llamar a la función dos veces; la primera llamada devuelve 0 o 0xE0, y la segunda llamada devuelve el código de clave real.

Estas funciones bloquean el subproceso de llamada y son, por consiguiente, seguras para subprocesos. Para las versiones que no son de bloqueo, consulte _getche_nolock, _getwche_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
_gettche _getche _getche _getwche

Requisitos

Routine Encabezado necesario
_getche <conio.h>
_getwche <conio.h> o <wchar.h>

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

Ejemplo

// crt_getche.c
// compile with: /c
// This program reads characters from
// the keyboard until it receives a 'Y' or 'y'.

#include <conio.h>
#include <ctype.h>

int main( void )
{
   int ch;

   _cputs( "Type 'Y' when finished typing keys: " );
   do
   {
      ch = _getche();
      ch = toupper( ch );
   } while( ch != 'Y' );

   _putch( ch );
   _putch( '\r' );    // Carriage return
   _putch( '\n' );    // Line feed
}
abcdefy
Type 'Y' when finished typing keys: abcdefyY

Consulte también

E/S de consola y puerto
_cgets, _cgetws
getc, getwc
_ungetch, _ungetwch, _ungetch_nolock, _ungetwch_nolock