Я некоторое время искал, чтобы найти функцию в системах Windows для использования в программировании на C, чтобы определить, какая клавиша была нажата, не требуя клавишу «Ввод» для подтверждения.
Я нашелkbhit()
, но это возвращает только положительные значения при нажатии клавиш и 0 при отсутствии нажатия клавиш.Мне бы хотелось, чтобы в функции было то же поведение, но возвращался код ASCII моей клавиши.
Причина в том, что я хочу создать некоторые элементы управления в игре на основе консоли, где мне нужны стрелки для навигации по игроку.,«А» переместит мою точку влево, «Д» - вправо.
В этот момент мне нужно нажать «a» и «enter», «d» и «enter» простым scanf("%c")
, и было бы неплохо, если бы консоль реагировала только при нажатиибуква вместо + вводится при каждом движении.