_getche_nolock
, _getwche_nolock
Obtém um caractere do console com eco e sem bloqueio.
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 _getche_nolock( void );
wint_t _getwche_nolock( void );
Valor retornado
Retorna o caractere lido. Não há retorno de erro.
Comentários
_getche_nolock
e _getwche_nolock
são idênticas a _getche
e _getwche
, exceto pelo fato de não serem protegidas contra interferência de outros threads. Eles podem ser mais rápidos porque não incorrem na sobrecarga de bloquear outros threads. Use estas funções apenas em contextos thread-safe, como aplicativos de thread único ou em que o escopo de chamada já trata do isolamento de threads.
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 |
---|---|---|---|
_gettche_nolock |
_getche_nolock |
_getch_nolock |
_getwche_nolock |
Requisitos
Rotina | Cabeçalho necessário |
---|---|
_getche_nolock |
<conio.h> |
_getwche_nolock |
<conio.h> ou <wchar.h> |
Para obter informações sobre compatibilidade, consulte Compatibilidade.
Exemplo
// crt_getche_nolock.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_nolock();
ch = toupper( ch );
} while( ch != 'Y' );
_putch_nolock( ch );
_putch_nolock( '\r' ); // Carriage return
_putch_nolock( '\n' ); // Line feed
}
abcdefy
Type 'Y' when finished typing keys: abcdefyY
Confira também
E/S de console e porta
_cgets
, _cgetws
getc
, getwc
_ungetch
, _ungetwch
, _ungetch_nolock
, _ungetwch_nolock