Клавиши со стрелками в OS X

Я пытаюсь сделать небольшую игру для консоли, поэтому мне нужно проверить, какая клавиша со стрелкой нажата. Не могу найти ничего полезного в интернете.

Пока я попробовал это:

printf("%i", getch());

но getch() возвращает всегда 27, независимо от того, на какую стрелку я нажимаю.

Есть идеи?

Спасибо!

1 ответ

Решение

Клавиши со стрелками внутренне представлены символами ESCAPE + "[" + буква. в зависимости от того, какая клавиша со стрелкой была: "A" - вверх, "B" - вниз, "C" - вправо, "D" - слева.

и ESCAPE #27. так что скорее всего, вы получаете три символа для стрелки, а не только один. вы получаете 27 (побег), 91 "[", а затем что-то в диапазоне 65-68 ("A"-"D").

Другие вопросы по тегам