【发布时间】:2022-01-03 08:56:58
【问题描述】:
我正在做一个小项目来提高我的编码技能,但我遇到了一个问题。我正在做 Flappy Bird 的控制台版本。所以我有一张地图,它是一个二维字符数组,这张地图必须向左移动。我将数组的所有元素向左移动一个位置,然后清除控制台并显示移动的地图。这里有一个问题,地图必须不断移动,但玩家必须在地图移动时控制一只鸟。我想使用 _getch() 但它暂停了一个程序。一个问题是:我可以在不暂停程序的情况下读取键盘输入吗?我的意思是地图仍然会移动,当我在任何时候按下空格键时,鸟的位置都会改变。我正在使用 Windows 10
【问题讨论】:
-
标准 C++(或其库)中没有非阻塞键盘输入。要么您必须使用特定于操作系统的功能,要么您必须在单独的线程中运行键盘输入(尽管后者仍然不能完全解决您的问题)。