我明白错误
下标值既不是数组也不是指针
当我试图编译我的程序时。我知道这与未声明的变量有关,但我检查了所有内容,它似乎已声明。
static char getValue(LOCATION l)
{
/*return carpark[l.col][l.row]; // Assumes that location is valid. Safe code is
below:
*/
if (isValidLocation(l)) {
return carpark[l.col][l.row]; <<<<<<<< this line
} // returns char if valid (safe)
else {
return '.';
}
与标题中代码的这一部分相对应
typedef struct
{
/* Rectangular grid of characters representing the position of
all cars in the game. Each car appears precisely once in
the carpark */
char grid[MAXCARPARKSIZE][MAXCARPARKSIZE];
/* The number of rows used in carpark */
int nRows;
/* The number of columns used in carpark */
int nCols;
/* The location of the exit */
LOCATION exit;
} CARPARK;
停车场在主程序中声明:
CARPARK carpark.
谢谢你的帮助。
最佳答案
carpark
不是数组,因此您可能需要如下内容:
return carpark.grid[l.col][l.row];
关于c - C编程:下标值既不是数组也不是指针,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7433618/