【发布时间】:2020-08-21 19:56:26
【问题描述】:
对于如何将二维数组指针参数分配给本地二维数组指针变量,我有点困惑。检查下面的代码。
#define N 5
#define M 6
void print(int (*arr)[M][N]) {
int *localArr[M][N];
localArr = arr; //error C3863: array type 'int *[6][5]' is not assignable
//localArr[0][0] =1; and so on.
}
int main()
{
int Array1[M][N];
print(&Array1);
}
【问题讨论】:
-
查看
arr的声明类型和localArr的声明类型。看到有什么不同吗? -
arr和localArr有不同的类型。arr是指向int数组的指针,而localArr是指向int的指针数组。 -
想想括号...
-
谢谢,还有其他最佳方法吗?就我而言,超速至关重要。
-
@Someprogrammerdude 你能画出这两个数组来可视化它们吗?我很困惑。
标签: c++ arrays pointers parameter-passing