c++ 贪吃蛇 使用kbhit() 搞不懂,蛇不能自己移动

while ( !IsDead ) //蛇的 Isdead 初始为0

{

    char key = _getch();

    do

        {

            if (snake1.move(key) == true) //如果获取用户按键wasd,且蛇移动成功(没有撞墙或吃到自身)

            {

                system("cls");                          //刷新显示

                wall1.display_wall();

                Sleep(300);

            }

            else                                     //如果移动失败(撞墙或要到自身)  

            {

                IsDead = true;                //蛇死亡

                break;

            }

        }while (!kbhit());

}

https://img1.mukewang.com/5bd471c80001b9d717471029.jpg

https://img4.mukewang.com/5bd471cb00019cf619201080.jpg

https://img2.mukewang.com/5bd471cc0001da6d16160916.jpg

按w键之后只移动了一次,想要使用kbhit()当无按键的情况下一直循环移动,但是每次刷新都不动

洗尽铅华也从容
浏览 2022回答 2
2回答
打开App,查看更多内容
随时随地看视频慕课网APP