如何在Erlang的标准输入上读取字符

时间:2013-11-27 16:42:27

标签: erlang io-buffering

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

  1. 是否可以在生成标准输入时访问这些字符?
  2. 我该怎么做?
  3. 项目的目的不是制作真实的游戏,而只是学习Erlang的一种方式。因此,性能不是问题。

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

1 个答案:

答案 0 :(得分:2)

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

查看wx(以及reference manual

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