C语言中的关键事件

C语言中的关键事件,c,keypress,C,Keypress,如果使用getc()或scanf(),则只知道用户在按下enter键后按下的按钮。有没有办法用C语言直接输入键盘 此外,我还在Linux上使用gcc(Raspberry pi) 它是特定于操作系统的(C99或C11标准不了解键盘)。在Linux(我在回答中重点介绍)和Unix上,由于传统和历史原因,它们是复杂的野兽(内核正在实现),请参见第页。有关血淋淋的细节,请参见(原始模式和非常规模式会让您头痛)& (你可以花几个月的时间去了解那些血淋淋的细节;我把大部分都忘了) 我强烈建议使用诸如或之类的

如果使用getc()或scanf(),则只知道用户在按下enter键后按下的按钮。有没有办法用C语言直接输入键盘

此外,我还在Linux上使用gcc(Raspberry pi)

它是特定于操作系统的(C99或C11标准不了解键盘)。在Linux(我在回答中重点介绍)和Unix上,由于传统和历史原因,它们是复杂的野兽(内核正在实现),请参见第页。有关血淋淋的细节,请参见(原始模式和非常规模式会让您头痛)&

(你可以花几个月的时间去了解那些血淋淋的细节;我把大部分都忘了)

我强烈建议使用诸如或之类的库进行编码(或者,如果你够受虐狂的话)

如果使用GUI,最好使用类似的工具箱

要轮询一组文件描述符,请使用


另请参见和。

您可以使用库吗?还有,在哪个操作系统上?因为您所要求的不是便携的和非标准的。请参阅使用ncurses。没有标准的C方式。您需要将终端置于“原始”模式。使用ncurses。在windows平台中,您应该在header.中使用getch()。要了解如何在linux中使用,请转到