gpt4 book ai didi

c - 将二维指针数组传递给函数 C

转载 作者:太空宇宙 更新时间:2023-11-04 06:43:51 26 4
gpt4 key购买 nike

我有一个二维指针数组

main.c

Int32 * pRxSeqAddr[2][2];

func(pRxSeqAddr);

/

func.c

void func( Int32** pRxSeqAddrPtr)
{

///
}

我收到这个错误:

argument of type "Int32 *(*)[2]" is incompatible with parameter of type "Int32 **

我知道如果它是一维指针数组那么这个函数调用没问题,但是二维让我很烦..

请帮忙

最佳答案

将 func.c 更改为:

void func(Int32 *pRxSeqAddrPtr[][2])
{

}

通常,要将二维数组传递给函数,您需要为除第一维以外的所有维度指定数组维度,因此在此示例中,您需要为最后一个维度指定 [2],但您可以选择为第一维省略它, 即

void func(Int32 *pRxSeqAddrPtr[2][2])
{

}

也是有效的,但有些多余。

关于c - 将二维指针数组传递给函数 C,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4152837/

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