gpt4 book ai didi

c - 如何使用结构数组调用函数?

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

我有下面的LCD驱动代码,我不确定如何调用这个函数

typedef struct  {
int16_t X;
int16_t Y;
} Point, * pPoint;

void LCD_PolyLine(pPoint Points, uint16_t PointCount) {
int16_t X = 0, Y = 0;
while(--PointCount) {
X = Points->X;
Y = Points->Y;
Points++;
LCD_DrawUniLine(X, Y, Points->X, Points->Y);
}
}

函数的第一个参数是“pPoint Points”是没有意义的。对我来说,它似乎应该是“pPoint *Points”。然后我可以创建一个 pPoints 数组并将这个地址传递给它。

在不修改它的情况下,您还可以如何调用此驱动程序函数?

最佳答案

It doesn't make sense to have the first argument of the function be pPoint Points.

这实际上很有意义,因为 pPoint 被定义为 Point*,即指向 Point 的指针。相当于

void LCD_PolyLine(Point *Points, uint16_t PointCount)

这是正确的签名。您需要做的就是传递一个 struct Point 数组,然后传递其中的元素数。

关于c - 如何使用结构数组调用函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34833670/

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