如何确定在C ++中按下的键

时间:2014-04-03 22:14:09

标签: c++ linux keyboard emulation keylistener

我正在研究用于Linux系统的CHIP-8仿真器。据我了解,我需要从(任意)16键获得键盘输入并将它们映射到六角键盘。一旦我得到输入,我就可以将它们映射到16个CHIP-8键。

然而,我无法弄清楚如何实际判断按键是否被按下。我相信Java我会使用keylistener,但我在C ++中找不到类似Linux的东西。有没有办法告诉我在任何给定时间按下特定键(如果有的话)?像我可以调用的getKeyState函数?

提前致谢。

2 个答案:

答案 0 :(得分:0)

您的程序可能会读取标准输入中的字符。

您可以使用fgets()库函数来执行读取。

例如见:

答案 1 :(得分:0)

ncurses上有本教程。 NCURSES Programming HOWTO。我已经确认在我的MacBook Pro,Mavericks 10.9.1上安装了Xcode命令行工具,ncurses.hcurses.h的符号链接,两者都位于/usr/include。这是NCURSES Introduction page

我自己没有创建过特定的课程。但是,有些搜索/dev/input/eventX,其中X似乎是零或一个,发现这两个单独的帖子:Read from /dev/inputlinux keypress events