_getch, _getwch

Obtém um caractere do console sem eco.

Importante

Esta API não pode ser usada em aplicativos executados no Windows Runtime. Para obter mais informações, confira Funções do CRT sem suporte em aplicativos da Plataforma Universal do Windows.

Sintaxe

int _getch( void );
wint_t _getwch( void );

Valor retornado

Retorna o caractere lido. Não há retorno de erro.

Comentários

As _getch funções e _getwch leem um único caractere do console sem ecoar o caractere. Nenhuma dessas funções pode ser usada para ler CTRL+C. Ao ler uma tecla de função ou uma tecla de direção, cada função deve ser chamada duas vezes; a primeira chamada retorna 0 ou 0xE0 e a segunda chamada retorna o código da tecla de fato.

Essas funções bloqueiam o thread de chamada e, portanto, são thread-safe. Para versões sem bloqueio, consulte _getch_nolock, _getwch_nolock.

Por padrão, o estado global dessa função tem como escopo o aplicativo. Para alterar isso, consulte Estado global no CRT.

Mapeamentos da rotina de texto genérico

Tchar.h Rotina _UNICODE e _MBCS não definidos _MBCS Definido _UNICODE Definido
_gettch _getch _getch _getwch

Requisitos

Rotina Cabeçalho necessário
_getch <conio.h>
_getwch <conio.h> ou <wchar.h>

Para obter mais informações sobre compatibilidade, consulte Compatibilidade.

Exemplo

// crt_getch.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 = _getch();
      ch = toupper( ch );
   } while( ch != 'Y' );

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

Confira também

Console e E/S de porta
_getche, _getwche
_cgets, _cgetws
getc, getwc
_ungetch, _ungetwch, _ungetch_nolock, _ungetwch_nolock