首页 > 解决方案 > 如何在C中同时进行输入和输出?

问题描述

我正在开发一个流行的“贪吃蛇游戏”项目。但我需要一种从用户同时输入来改变输出屏幕上移动蛇的方向的方法。一旦按下改变方向的键,输入应该立即被处理,并且在输出屏幕上,蛇必须沿着按下的方向移动。

标签: cconcurrencyproject2d-games

解决方案


而不是使用阻塞 I/O(您调用从标准输入或键盘读取并等待输入到来),您需要由poll提供的非阻塞 I/O 。

poll 的优点是它会立即返回,即使没有键盘输入。根据上面的评论,由于刷新会比正常的人类反应时间快得多(计算机很快),因此看起来好像视觉更新和键盘处理同时发生。


推荐阅读