程序主循环
MSG msg = { 0 };
DWORD dwLastTick = ::GetTickCount(), dwCurrentTick;
while (msg.message != WM_QUIT)
{
// 当前时间戳
dwCurrentTick = ::GetTickCount();
if (PeekMessage(&msg, NULL, 0, 0, PM_REMOVE)) {......}
// 游戏更新
SnakeGame_Update(dwCurrentTick - dwLastTick);
// 游戏渲染
SnakeGame_Render(hWnd);
dwLastTick = dwCurrentTick;
// Sleep 休息10毫秒,避免主循环消耗过多的CPU
Sleep(10);
}