在C中访问击键

我正在尝试访问C中的按键。我可以访问字母数字键。 我如何访问ControlShiftAlt键?
另外,我有时在控制台input文本的地方阅读,操作系统掩码退格键。 我想知道用户按下退格键的地方。 这与“\ n”被按下时不一样。 GNU C. Ubuntu 11。

Dietrich Epp在评论中回答:使用ncurses库。

另见这个问题

你可以制作一个X11客户端图形应用程序; 在这种情况下,使用像GTK或Qt这样的图形工具包库

如果你想做一个控制台应用程序,使用ncurses或者readline

而从字面上看,你的问题没有意义:严格的C标准不知道什么是关键或按键(标准中提到的唯一I / O操作是通过FILE<stdio.h>相关的)。 这就是为什么大多数人使用额外的库和标准(除了ISO C所要求的)之外, Posix …

简单的答案是“你不能”,至少不容易或没有下载第三方库。

大多数C程序不必知道关于键盘或屏幕的任何信息。 标准C只关心读写文件(键盘和屏幕是特殊文件)。

假设你有一个很好的理由直接访问键盘,你应该看看ncurses库(http://www.gnu.org/software/ncurses/ncurses.html)&#x3002; Ncurses知道有多少个不同的(虚拟)终端和键盘可以工作,并且提供了一个统一的接口。 它使您可以绘制屏幕并仅使用文本块创建替代图形界面。

由于您使用的是Ubuntu,请尝试运行“aptitude”命令来查看ncurses可以执行的一个很好的示例。