gpt4 book ai didi

C数组和指针参数

转载 作者:太空宇宙 更新时间:2023-11-04 00:18:59 25 4
gpt4 key购买 nike

我收到以下警告:

expected ‘float **’ but argument is of type ‘float (*)[6]’

这是我的代码:

//state and error are output parameters
void func(float* state[6], float* err[6][6]);

int main()
{
float state[6];
float err[6][6];

func(&state, &err);

return 0;
}

我希望 state 和 err 是输出参数,所以 state 应该是一个指向数组的指针,而 err 应该是一个指向二维数组的指针。

最佳答案

将您的代码更改为:

void func(float state[], float err[][6]);

int main()
{
float state[6];
float err[6][6];

func(state, err);

return 0;
}

要理解原因,您需要知道 float* err[6][6] 是一个指向 float 的 6x6 指针数组,而不是指向一个 6x6 float 数组的指针。

关于C数组和指针参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11582098/

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