_getche_nolock
, _getwche_nolock
Pobiera znak z konsoli z echo i bez blokowania.
Ważne
Tego interfejsu API nie można używać w aplikacjach wykonywanych w środowisko wykonawcze systemu Windows. Aby uzyskać więcej informacji, zobacz Funkcje CRT nieobsługiwane w aplikacjach platforma uniwersalna systemu Windows.
Składnia
int _getche_nolock( void );
wint_t _getwche_nolock( void );
Wartość zwracana
Zwraca odczyt znaku. Nie ma zwracanego błędu.
Uwagi
_getche_nolock
i są identyczne z _getche
elementami i _getwche_nolock
_getwche
z tą różnicą, że nie są one chronione przed ingerencją innych wątków. Mogą one być szybsze, ponieważ nie powodują obciążenia związanego z blokowaniem innych wątków. Używaj tych funkcji tylko w kontekstach bezpiecznych wątkowo, takich jak aplikacje jednowątkowe lub gdzie zakres wywołujący obsługuje już izolację wątków.
Domyślnie stan globalny tej funkcji jest zakresem aplikacji. Aby zmienić to zachowanie, zobacz Stan globalny w CRT.
Mapowania procedur tekstu ogólnego
Procedura tchar.h | _UNICODE i _MBCS niezdefiniowane |
_MBCS zdefiniowany |
_UNICODE zdefiniowany |
---|---|---|---|
_gettche_nolock |
_getche_nolock |
_getch_nolock |
_getwche_nolock |
Wymagania
Procedura | Wymagany nagłówek |
---|---|
_getche_nolock |
<conio.h> |
_getwche_nolock |
<conio.h> lub <wchar.h> |
Aby uzyskać więcej informacji o zgodności, zobacz Zgodność.
Przykład
// 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
Zobacz też
We/Wy konsoli i portu
_cgets
, _cgetws
getc
, getwc
_ungetch
, , _ungetwch
, , _ungetch_nolock
_ungetwch_nolock