[英]C++ wait for input
我正在写一个类似于老派赛车手的基于终端的游戏,在该游戏中,您只能更改车道以避免障碍。 除了为改变车道而要求输入的部分之外,我已经能够对其他所有代码进行编码。 此功能应等待2秒钟等待输入,如果有输入,它将确定要更改为哪个通道。 cin>>input;
使程序无限期等待,并且由于某种原因getchar();
不起作用。
我已经搜索并找到了它: 等待输入一段时间
我的问题是我没有<conio.h>
, <curses.h>
和<ncurses.h>
所以我将无法使用getch();
<ncurses.h>
没有这些库文件,有什么办法可以使计算机执行此操作?
我还需要帮助来减少等待时间,以增加游戏的难度。 sleep();
无法工作,因为未包含库文件,并且使用nanosleep();
遇到麻烦nanosleep();
但我希望每次必须输入播放器时都可以将时间间隔减少.1秒,直到仅输入.5秒。 有没有办法我也可以做到这一点?
与我现在拥有的相关的代码:
如果您想用自己的方式进行编码,则可以创建另一个处理输入的线程,主程序会在x时间后杀死该线程,并检查是否已创建条目。
C ++标准没有“等待X单位时间的输入”。 因此,您将需要使用某些库或特定于操作系统的功能来实现此目的。 由于您已经提到过nanosleep
,您可能正在使用Linux,因此请安装ncurses
并使用它。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.