Как определить, что клавиша со стрелкой нажата с помощью C под Linux или Solaris? - PullRequest
6 голосов
/ 20 февраля 2009

Каков наилучший способ обнаружить в программе на C нажатие клавиши со стрелкой в ​​Linux или Solaris?

Как я знаю, нет стандартной функции C, которая могла бы это сделать. Я не хочу использовать функцию int86. Мне нужно сделать это портативным способом.

Редактировать : Я спрашиваю о консольных приложениях.

Ответы [ 3 ]

5 голосов
/ 20 февраля 2009

Вам следует взглянуть на библиотеку curses / ncurses, которая предоставит вам расширенные возможности управления экраном и клавиатурой для консольных приложений.

Существует множество документации для проклятий, которая представляет собой обширную библиотеку.

Имеется описание этого самого вопроса здесь

2 голосов
/ 20 февраля 2009

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

0 голосов
/ 20 февраля 2009

Если вы хотите сделать это без использования чего-то вроде SDL, вы должны изучить оператор select () и узнать, как его использовать для чтения с консоли.

...