3

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

int dataDim = 100;
float inData[2][dataDim];

我想将它传递给一个可以用数据填充它的函数。如何以我可以直接填写的方式传递它?也许

function(float** array)

然后访问array[0][0]可能不起作用?奇怪的是,我找不到任何关于此的快速示例。

4

1 回答 1

9

在 C 中,必须知道多维数组的大小才能这样传递,尽管如果您愿意,可以省略一些大小。

精确的

void function(float array[][100]); 
void function(float (*array)[100]);

语法有效

尽管编译器可能会合法地忽略 size 2

void function(float array[2][100]);
于 2012-08-08T10:10:52.940 回答