_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 funções _getch
e _getwch
leem um caractere único no console sem que haja eco do caractere. Para ler uma tecla de função ou uma tecla de seta, cada função deve ser chamada duas vezes. A primeira chamada retorna 0
ou 0xE0
. A segunda chamada retorna o código de verificação de chave.
Essas funções bloqueiam o thread de chamada e, portanto, são thread-safe. Quanto às 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 esse comportamento, confira Estado global no CRT.
Mapeamentos de rotina de texto genérico
Rotina Tchar.h |
_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 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
E/S de console e porta
_getche
, _getwche
_cgets
, _cgetws
getc
, getwc
_ungetch
, _ungetwch
, _ungetch_nolock
, _ungetwch_nolock