小编Noo*_*mer的帖子

函数原型在C中返回2D数组

我不是很擅长C而且我对双阵列很困惑.下面是我有一个问题的代码大纲.Main函数调用CreateRandConn函数,并将一个填充0的2D数组作为参数传递给它.CreateRandConn函数将2D数组作为参数,将2DArray中的某些值从0更改为1,并将更改后的2DArray返回给main.我想在函数原型中指出CreateRandConn函数的返回类型是一个2D数组.我该如何表明?我真的不懂语法.我写错了什么?我传递2DArray作为函数头中的参数的方式是不正确的?如果是这样,我怎么写呢?我仍然对指针和双数组之间的关系感到困惑.有人可以用下面的代码大纲来解释它吗?希望有人知道我的问题是什么......

//Function prototype
int ** CreateRandConn(char * RandRoom[7], int my2DArray[7][7], char * room_dir);

//Function
int ** CreateRandConn(char * RandRoom[7], int my2DArray[7][7], char * room_dir)
{
   ...
   return my2DArray;
}

int main()
{
   int 2DArray[7][7] = {0}; 
   2DArray = CreateRandConn(RandRoomArray, my2DArray[7][7], room_dir);
   return 0;
}
Run Code Online (Sandbox Code Playgroud)

c pointers multidimensional-array function-prototypes

2
推荐指数
1
解决办法
364
查看次数