我正在尝试用C ++创建一个基本的简单游戏,用户经常需要输入,并且应该有其他东西的持续输出(移动对象(*))。
即使用户没有输入任何内容,对象也必须继续移动。这需要同时运行两个循环,我不知道该怎么做。
没有图形只是基本的符号和字母。
答案 0 :(得分:1)
您不需要两个同时循环。你应该只有一个循环。在每次循环迭代中,您将更新游戏的输出,然后检查,如果用户输入了任何输入。如果他有,那么你读它并处理它;否则,您只需继续下一次循环迭代。一个简单的方法来开始使用_kbhit和_getch函数,但你可能需要使用更高级的东西,如ncurses或最终的Win32控制台函数。
while( !gameOver ) {
DisplayGameState();
if( _kbhit() ) {
int c = _getch();
ProcessInput( c );
}
}