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


_kbhit

Проверяет консоль на предмет ввода с клавиатуры.

Важно!

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

Синтаксис


int _kbhit( void );

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

Функция _kbhit возвращает ненулевое значение, если была нажата клавиша. В противном случае возвращается значение 0.

Замечания

Функция _kbhit проверяет консоль на предмет недавнего нажатия клавиши. Если функция возвращает ненулевое значение, нажатие клавиши ожидает в буфере. Программа может затем вызвать _getch или _getche для получения нажатия клавиши.

По умолчанию глобальное состояние этой функции ограничивается приложением. Чтобы изменить это поведение, см . статью "Глобальное состояние" в CRT.

Требования

Маршрут Обязательный заголовок
_kbhit <conio.h>

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

Библиотеки

Все версии библиотек времени выполнения языка C.

Пример

// crt_kbhit.c
// compile with: /c
/* This program loops until the user
* presses a key. If _kbhit returns nonzero, a
* keystroke is waiting in the buffer. The program
* can call _getch or _getche to get the keystroke.
*/

#include <conio.h>
#include <stdio.h>

int main( void )
{
   /* Display message until key is pressed. */
   while( !_kbhit() )
      _cputs( "Hit me!! " );

   /* Use _getch to throw key away. */
   printf( "\nKey struck was '%c'\n", _getch() );
}

Пример полученных результатов

Hit me!! Hit me!! Hit me!! Hit me!! Hit me!! Hit me!! Hit me!!
Key struck was 'q'

См. также

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