gpt4 book ai didi

c - malloc 一个结构指针数组,需要帮助

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

我正在尝试使用 malloc 为结构指针数组分配堆内存,但我无法让它工作。下面是我的代码,但是当我用 gcc 编译时,我得到了这样的错误“错误:'->' 的无效类型参数”

数组我想建立一个mystruct_pointer数组,它应该指向实际的__mystruct_t,我想我可以在它的成员字段上使用“->”。我的代码哪里有问题?我认为它应该工作。谢谢

typedef struct
{
int id;
bool status;
} __mystruct_t;

typedef __mystruct_t* mystruct_pointer;

mystruct_pointer struct_ptr_array;

void my_init(int number)
{
struct_ptr_array = (mystruct_pointer) malloc(sizeof(__mystruct_t) * number);

int i;
for (i = 0; i < number; i++) /* initialize the array of struct pointers */
{
struct_ptr_array[i]->id = i;
struct_ptr_array[i]->status = false;
}
}

最佳答案

将“->”替换为“.”。因为“struct_ptr_array[i]”已经取消引用指针。

关于c - malloc 一个结构指针数组,需要帮助,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22006991/

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