相关疑难解决方法(0)

如何在C中的函数中传递2D数组(矩阵)?

我需要这样做才能在矩阵上持续操作.这是否意味着它需要通过引用传递?

这还够吗?

void operate_on_matrix(char matrix[][20]);

c parameter-passing multidimensional-array

50
推荐指数
3
解决办法
18万
查看次数

在C程序中的函数中传递2D数组

下面的程序(一个将数组传递给函数的玩具程序)不能编译.请解释一下,为什么编译器无法编译(由于技术原因或标准原因?)

我还会看一些解释指针/多维数组的书(因为我对它们不满意),但是这里的任何现成指针都应该是有用的.

void print2(int ** array,int n, int m);

main()
{
    int array[][4]={{1,2,3,4},{5,6,7,8}};
    int array2[][2]={{1,2},{3,4},{5,6},{7,8}};
    print2(array,2,4);
}

void print2(int ** array,int n,int m)
{
    int i,j;
    for(i=0;i<n;i++)
    {
       for(j=0;j<m;j++)
       printf("%d ",array[i][j]);

       printf("\n");
    }
}
Run Code Online (Sandbox Code Playgroud)

c arrays pointers multidimensional-array

9
推荐指数
2
解决办法
3万
查看次数