小白求问linux下怎么捕获键盘信号!!

cassiopeia18 2016-12-13 03:50:13
其实想实现的目的很简单
有一串字符在移动(利用了curses.h写的),现在我想键盘敲一下上下左右键,字符串的移动方向就改变,(不敲键盘一直保持原方向移动)就好像那个弹球游戏的感觉差不多
我的问题是怎么捕获键盘的信号啊。。由于在下学过的东西实在不多,网上好多特别高大上的代码我也看不太懂。。。我现在有想拿信号处理这个问题,比如我等待一个键盘信号然后写一个handler。。。但是signal没有对应键盘输入的啊,倒是有SIGINT,我也不能每次都按一个ctrl c吧。。。至于SIGIO,我倒是想试试,但是我在linux打了以后并不像SIGINT,SIGUSR1一样变红,系统就好像觉得它是我定义的一个变量一样,根本调用不了。。。。
我今天已经在网上看了一整天了 也没有找到好的答案。。

我有思考ctrl+c (SIGINT)能一下子被捕获,那其他键盘键也应该一样啊。。但是找了很久也没有讲SIGINT到底怎么被捕获的,有哪位给我讲讲这个也行啊。。或者一般的游戏不也是需要键盘输入然后控制吗,这种是怎么获得的,感觉这个问题不能无解啊,,,,
有没有大神能给我出个主意啊,简单易懂可操作就好了。。。实在太白了,谢谢各位了先
由于这周说要解决这个问题,解决不了的话没法交差的。。。。
...全文
606 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
ipqtjmqj 2016-12-13
  • 打赏
  • 举报
回复
引用 3 楼 cassiopeia18 的回复:
[quote=引用 1 楼 ipqtjmqj 的回复:] 可以下个SDL库
这是什么啊。。[/quote] SDL是个跨平台的C语言多媒体库,全称simple directmedia layer, 可以画图,捕捉键鼠事件也不在话下
ipqtjmqj 2016-12-13
  • 打赏
  • 举报
回复
引用 4 楼 cassiopeia18 的回复:
[quote=引用 2 楼 ipqtjmqj 的回复:] 控制台,找一个conio
看不懂啊大神,可不可以说明的详细点[/quote] windows下的conio.h你用过吗,里面你个函数getch。linux下没有标准的conio.h但有别人写的
ipqtjmqj 2016-12-13
  • 打赏
  • 举报
回复
用js写更简单,html事件中有个onkeydown
cassiopeia18 2016-12-13
  • 打赏
  • 举报
回复
引用 2 楼 ipqtjmqj 的回复:
控制台,找一个conio
看不懂啊大神,可不可以说明的详细点
cassiopeia18 2016-12-13
  • 打赏
  • 举报
回复
引用 1 楼 ipqtjmqj 的回复:
可以下个SDL库
这是什么啊。。
ipqtjmqj 2016-12-13
  • 打赏
  • 举报
回复
控制台,找一个conio
ipqtjmqj 2016-12-13
  • 打赏
  • 举报
回复
可以下个SDL库

23,121

社区成员

发帖
与我相关
我的任务
社区描述
Linux/Unix社区 应用程序开发区
社区管理员
  • 应用程序开发区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧