_getch_nolock
, _getwch_nolock
Rufen ein Zeichen von der Konsole ohne echo ab, und ohne den Thread zu sperren.
Wichtig
Diese API kann nicht in Anwendungen verwendet werden, die in Windows-Runtime ausgeführt werden. Weitere Informationen finden Sie im Artikel CRT functions not supported in Universal Windows Platform apps (In Apps für die universelle Windows-Plattform nicht unterstützte CRT-Funktionen).
Syntax
int _getch_nolock( void );
wint_t _getwch_nolock( void );
Rückgabewert
Gibt das gelesene Zeichen zurück. Es gibt keine Fehlerrückgabe.
Hinweise
_getch_nolock
und _getwch_nolock
sind mit _getch
und_getchw
nahezu identisch; allerdings sind sie nicht vor Störungen durch andere Threads geschützt. Sie sind möglicherweise schneller, da kein Mehraufwand zur Sperrung anderer Threads erforderlich ist. Verwenden Sie diese Funktionen nur in threadsichere Kontexten wie z. B. in Singlethreadanwendungen oder in Fällen, in denen der aufrufende Bereich die Threadisolation bereits handhabt.
Standardmäßig gilt der globale Zustand dieser Funktion für die Anwendung. Wie Sie dieses Verhalten ändern, erfahren Sie unter Globaler Status in der CRT.
Mapping generischer Textroutinen
Tchar.h-Routine | _UNICODE und _MBCS nicht definiert |
_MBCS definiert |
_UNICODE definiert |
---|---|---|---|
_gettch_nolock |
_getch_nolock |
_getch_nolock |
_getwch_nolock |
Anforderungen
Routine | Erforderlicher Header |
---|---|
_getch_nolock |
<conio.h> |
_getwch_nolock |
<conio.h> oder <wchar.h> |
Weitere Informationen zur Kompatibilität finden Sie unter Kompatibilität.
Beispiel
// 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
Siehe auch
Konsolen- und Port-E/A
_getche
, _getwche
_cgets
, _cgetws
getc
, getwc
_ungetch
, _ungetwch
, _ungetch_nolock
, _ungetwch_nolock