_getch_nolock
, _getwch_nolock
Obtiene un carácter de la consola sin eco y sin bloqueo.
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 _getch_nolock( void );
wint_t _getwch_nolock( void );
Valor devuelto
Devuelve el carácter leído. No se devuelve ningún error.
Comentarios
_getch_nolock
y _getwch_nolock
son exactamente iguales que _getch
y _getchw
, salvo que no están protegidas contra interferencias de otros subprocesos. Pueden ser más rápidos porque no incurren en la sobrecarga de bloquear otros subprocesos. Use estas funciones solo en contextos seguros para subprocesos como aplicaciones de un único subproceso o donde el ámbito de llamada ya controle el aislamiento de subprocesos.
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 |
---|---|---|---|
_gettch_nolock |
_getch_nolock |
_getch_nolock |
_getwch_nolock |
Requisitos
Routine | Encabezado necesario |
---|---|
_getch_nolock |
<conio.h> |
_getwch_nolock |
<conio.h> o <wchar.h> |
Para obtener más información sobre compatibilidad, consulte Compatibilidad.
Ejemplo
// crt_getch_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 = _getch_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: Y
Vea también
E/S de consola y de puerto
_getche
, _getwche
_cgets
, _cgetws
getc
, getwc
_ungetch
, _ungetwch
, _ungetch_nolock
, _ungetwch_nolock