gpt4 book ai didi

c - 弹跳游戏显示多个球

转载 作者:太空宇宙 更新时间:2023-11-04 05:19:49 25 4
gpt4 key购买 nike

我正在制作一个在命令提示符中显示的类似乒乓球的游戏,但我遇到了一个问题。我有一个函数,用于显示游戏 field 和球的位置:

#include "std_lib_facilities.h"
#include "ball.h"
#include "field.h"

void display (field f, ball b)
{
cout << "\n\n\n\n\n\n\n\n";
for (int h = 0; h < 10; ++h)//
{
cout << "\n\t|";
for (int w = 0; w < 20; ++w)
{
cout << " ";
if (b.x = w && b.y == h) cout << "o";
else cout << ".";
}
}
cout << "\n\n\n\n\n\n\n\n";
}

当我运行程序时,该字段显示正确,但不是单个球,而是整行(正确的行)都用“o”填充。

因此,如果球的坐标为 (5, 5),则整个第 5 行将是“o”。

我已经尝试注释掉我的 main() 中的所有其他函数,但这仍然是一个问题。如果您能提供任何帮助,我将不胜感激,我很难过。

最佳答案

你在这里分配而不是比较:

if (b.x = w && b.y == h) cout << "o";
// ^

所以每当 w 非零时,b.x=w 被评估为 true。应该是

if (b.x == w && b.y == h) cout << "o";
// ^^

关于c - 弹跳游戏显示多个球,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15751956/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com