0

我正在尝试从 array[i][] 中获取值,其中 i 是我需要的值,并希望将其存储在将用于不同事物的变量中。我不知道我会怎么做。

这就是我现在所拥有的,但我不断收到错误消息error: expected expression before ‘]’ token

int choice, startRow, startCol, peekCount=5, hagMoveCount=0;
char direction, hagDirection;
char maze[ROWS][COLS];
char hiddenMaze[ROWS][COLS];

startRow=maze[ROWS][];
    startCol=maze[][COLS];

同时我正在尝试获取列位置

4

2 回答 2

0

二维数组不太像那样工作。您可能应该阅读如何使用它们。

您不能将某些内容分配给 2D 数组的整行或整列。您必须创建自己的函数来处理此类事情:

void setRow(char maze[ROWS][COLS], int ROWS, int COLS, int targetRow, char value)
{
  int i;
  for(i=0; i< COLS; i++)
  {
    maze[targetRow][i] = value;
  }
}

同时我正在尝试获取列位置

呜?

于 2013-04-26T19:16:48.013 回答
0

编译器不知道如何计算数组,除非您在第二组括号中或在两个括号中定义值。myArray[8][]是不允许的,但是myArray[][8]是(我刚才测试了这个)。编译器遇到类似问题的原因myArray[][8]是它不知道您是要创建 1 x 8、2 x 4、4 x 2 还是 8 x 1 数组。您还需要在每个数组元素中放置值,否则它们默认为零。这很容易通过一for两个循环来完成。

于 2013-04-26T21:10:53.300 回答