我有 2 个 2d 字符数组用于表示 5x5 网格。问题在于函数的最后 4 行(我在数组中设置了一些字符的值,我用它们进行测试)。然后,如果我打印出网格,它看起来像这样。
SP_HumanGrid:
11---
-----
-----
-----
-----
SP_AIGrid:
11---
-----
-----
----1
11---
代码在这里:
char SP_HumanGrid[4][4]; //The Human player's grid
char SP_AIGrid[4][4]; //The AI player's grid
void SP_EmptyGrids(void)
{
int nRow,nCol;
for (nRow=0;nRow<5;nRow++)
{
for (nCol=0;nCol<5;nCol++)
{
SP_HumanGrid[nRow][nCol] = POINT_WATER;
SP_AIGrid[nRow][nCol] = POINT_WATER;
}
}
SP_HumanGrid[0][0] = POINT_SHIP1;
SP_HumanGrid[0][1] = POINT_SHIP1;
SP_AIGrid[0][0] = POINT_SHIP1;
SP_AIGrid[0][1] = POINT_SHIP1;
}
我没有其他函数可以修改 SP_AIGrid 变量的值。它们不应该看起来相同吗,因为我将它们设置为相同的值?
PS:不要问这个想法,我正在通过在控制台中创建战舰游戏来测试语言。我知道这是错误的......愚蠢但我仍然想尝试一下。