gpt4 book ai didi

C——将二维数组作为函数参数传递?

转载 作者:行者123 更新时间:2023-11-30 16:39:43 25 4
gpt4 key购买 nike

可以轻松定义一个接受一维数组参数的函数,如下所示:

int MyFunction( const float arr[] )
{
// do something here, then return...

return 1

}

尽管定义如下:int MyFunction( const float* arr ) 也可以工作。

如何定义一个接受二维数组参数的函数?

我知道这有效:int MyFunction( const float** arr ) -- 但是,是否可以使用第一个使用 [] 的变体?

最佳答案

在 C99 中,您可以在传递数组之前提供数组的维度:

 void array_function(int m, int n, float a[m][n])
{
for (int i = 0; i < m; i++)
for (int j = 0; j < n; j++)
a[i][j] = 0.0;
}


void another_function(void)
{
float a1[10][20];
float a2[15][15];
array_function(10, 20, a1);
array_function(15, 15, a2);
}

关于C——将二维数组作为函数参数传递?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46942256/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com