通过引用传递2D数组

Pri*_*alj 3 c arrays pointers reference

所以在我的主要功能中,我正在创建一个2D数组:

int dataDim = 100;
float inData[2][dataDim];
Run Code Online (Sandbox Code Playgroud)

我想将它传递给一个函数,在那里我可以用数据填充它.如何通过我能够直接填写它的方式传递它?也许

function(float** array)
Run Code Online (Sandbox Code Playgroud)

然后访问array[0][0]可能不起作用?奇怪的是我怎么找不到任何关于这个的快速例子.

jus*_*tin 9

在C中,必须知道多维数组的大小如此传递,尽管如果您愿意,可以省略某些大小.

精确

void function(float array[][100]); 
void function(float (*array)[100]);
Run Code Online (Sandbox Code Playgroud)

语法上有效

虽然编译器可能在法律上忽略了大小2.

void function(float array[2][100]);
Run Code Online (Sandbox Code Playgroud)