c++ - 将二维数组指针参数分配给局部数组指针变量

标签 c++ arrays pointers parameter-passing

我对如何将二维数组指针参数分配给本地二维数组指针变量有点困惑。检查下面的代码。

#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);         
}

最佳答案

本地声明必须是这样的,

 int (*localArr)[M][N]; //pointer to an MxN array
 //int * localArr[m][N];//An MxN array of pointer to int

关于c++ - 将二维数组指针参数分配给局部数组指针变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61642231/

相关文章:

c++ - 如何在运行时优雅地排除代码块

c++ - DTW 算法 OCT 文件

arrays - 如何使用 swift 4 向用户默认数组添加值

c++ - 我可以将 std::any 与 C++17 一起用于指向成员变量的指针吗?

pointers - 从作为接口(interface)传递的指针连接 slice

c++ - 将 C++ 实例方法分配给全局函数指针?

c++ - Curlpp 的问题

C++ "Named Parameter Idiom"与 Boost::Parameter 库

arrays - 维护 bash 关联数组的插入顺序

python - 过滤 numpy 数组的 numpy 数组