Поделиться через


_getche_nolock, _getwche_nolock

Получает символ из консоли, с отображением и без блокирования потока.

Важно!

Этот API невозможно использовать в приложениях, запускаемых в среде выполнения Windows.Дополнительные сведения см. в статье Функции CRT, которые не поддерживаются с ключом /ZW.

int _getche_nolock( void );
wint_t _getwche_nolock( void );

Возвращаемое значение

Возвращает считанный символ. Нет какого-либо возврата ошибки.

Заметки

Функции _getche_nolock и _getwche_nolock совпадают с _getche и _getwche за исключением того, что они не защищены от вмешательства других потоков. Они могут выполняться быстрее, поскольку не создают дополнительную нагрузку, связанную с блокировкой работы других потоков. Используйте эти функции только в потокобезопасных контекстах, например в однопоточных приложениях или если вызываемая область уже обрабатывает изоляцию потоков.

Универсальное текстовое сопоставление функций

Подпрограмма Tchar.h

_UNICODE и _MBCS не определены

_MBCS определено

_UNICODE определено

_gettche_nolock

_getche_nolock

_getch_nolock

_getwche_nolock

Требования

Подпрограмма

Обязательный заголовок

_getche_nolock

<conio.h>

_getwche_nolock

<conio.h> или <wchar.h>

Дополнительные сведения о совместимости см. в разделе Совместимость.

Пример

// 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 
}
  

Эквивалент в .NET Framework

Неприменимо. Для вызова стандартной функции C используйте PInvoke. Дополнительные сведения см. в разделе Примеры вызовов неуправляемого кода.

См. также

Ссылки

Ввод-вывод на консоль и порт

_cgets, _cgetws

getc, getwc

_ungetch, _ungetwch, _ungetch_nolock, _ungetwch_nolock