如何检测以Ada语言按下的任何键盘按钮

时间:2020-04-05 04:10:09

标签: ada kbhit

我是Ada编程的初学者。我正在尝试使用Ada制作“ 2048”游戏。我在C ++中执行了“ 2048”,并且使用了“ kbhit()”来检测是否有按下任何键盘按钮。我想知道是否有类似的功能可用,例如Ada中的“ kbhit()”,或者如何编写函数来检测是否按下了任何键盘按钮,或者我应该只在C ++中通过接口使用该功能。

1 个答案:

答案 0 :(得分:4)

是的,您可以使用mystery的多个重载版本中的任何一个。声明(摘自Ada标准的2012版):

Ada.Text_IO.Get_Immediate

从 指定的文件或默认输入文件。如果传播Mode_Error 文件的模式不是In_File。如果在 文件末尾。当前列,行和页码 文件不受影响。

procedure Get_Immediate(File : in File_Type;
                        Item : out Character);
procedure Get_Immediate(Item : out Character);

如果可以从 指定文件或默认输入文件,然后读取字符; 可用为True,并且Item包含此字符的值。如果一个 字符不可用,则Available为False且值 未指定项目。如果 文件不是In_File。如果在末尾传播End_Error, 文件。该文件的当前列号,行号和页码不是 受影响。