gpt4 book ai didi

c - 在结构体中使用指向结构体数组的指针

转载 作者:行者123 更新时间:2023-11-30 16:13:23 26 4
gpt4 key购买 nike

我正在尝试使用指向另一个结构内的结构数组的指针,并能够引用不同的结构。不确定我是否正确执行此操作,因为我无法编译代码

typedef struct profile {
uint32 age;
uint32 height;
uint32 weight;
} profile;

typedef struct {
uint32 number_of_friends;
profile (*PROFILES)[];
} records;

// Here's how how i'm attempting to reference the above
uint32 age1;
records record1;
...
age1 = record1.PROFILES[0].age;

我得到的错误是:错误:指向不完整类型“records []”的指针下标

最佳答案

这里似乎有两个问题。我相信,您可以在结构中声明:

profile** PROFILES;

profile* PROFILES[];

它们具有相同的效果。

然后,在引用该项目的地方,您应该注意,数组内部是配置文件 *-s,因此您可以像这样引用它们:

record1.PROFILES[0]->age

还要考虑到最初没有为 PROFILES 分配空间,您必须手动管理该成员底层的存储。

关于c - 在结构体中使用指向结构体数组的指针,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58049638/

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