5

我正在尝试编写一个基本的视频游戏,并希望从键盘输入输入。因此,我需要读取标准输入上的字符,因为它们是生成的。由于缓冲,io:get_chars, io:fread 只有在按下返回键后才会返回。

  1. 是否可以在标准输入中访问生成的字符?
  2. 我该怎么做?

该项目的重点不是制作一个真实的游戏,它只是一种学习 Erlang 的方式。因此性能不是问题。

编辑:这个项目似乎提供了我正在寻找的功能。不过,如果我没记错的话,部分代码是用 C 编写的,并通过消息传递将字符发送到 Erlang 部分。这种方法是否有替代 Erlang 原生的替代方法,或者这是唯一可行的方法?

4

1 回答 1

2

一般来说,在处理游戏的键盘输入时,从 STDIN 读取并不是您想要的方式。您希望能够在任何给定时刻读取键的状态。

看看wx(和参考手册

它是wxWidgets库的 Erlang 接口,包括用于处理各种输入的接口,包括键盘。

于 2013-12-04T21:29:28.917 回答