【发布时间】:2017-04-02 19:44:42
【问题描述】:
基本上,我有一个二维数组,我想使用 for 循环填充这些元素。这是一个粗略的设置(不起作用):
int grid[rows][columns];
for (int i=0; i < rows; i++){
grid[rows][i] = 0;
for (int j=0; j < columns; j++){
grid[columns][j] = 0;
}
}
我有一个用户确定的工作网格。因此,基本上,如果用户输入 x x x 的行和列,它将起作用。问题出现是因为它会在网格的共振峰中打印出随机数。所以有时它会打印出来:
4 4 4 4
4 4 4 4
4 4 4 4
我试图得到一个看起来像这样的网格:
0 0 0 0
0 0 0 0
0 0 0 0
我先创建二维数组,然后尝试用 0 填充元素。这就是我使用 for 循环的原因。结果是用 0 填充每个元素。它只是由于某种原因不起作用。我不知道...
任何建议都会有所帮助!谢谢你
【问题讨论】:
-
使用您的调试器,在您分配 0 的每一行处停止。通过检查您正在使用的索引的值,检查并记下您分配 0 的数组中的位置。当您注意到您正在重新分配相同的目标索引时,您的错误应该非常明显。
-
提示,检查您是否在数组范围内写入。