程式碼結構:
while (true) {
char keydown = getch(); // 讀取按鍵(阻塞)
m.change_point(keydown); // 改變移動方向
while (!kbhit()) { // 無按鍵時持續執行
system("cls"); // 清螢幕
m.moving(); // 蛇移動一步
f.OutputF(); // 繪製食物
Sleep(200); // 延遲 200ms 控制速度
}
}外層無限迴圈處理遊戲主流程,getch() 等待使用者輸入方向鍵,kbhit() 檢測是否有新按鍵,無則進入內層迴圈讓蛇自動前進、重繪畫面。Sleep 控制遊戲速度,避免過快。