如何为struct指针数组分配内存然后释放它?

时间:2015-11-12 21:03:48

标签: c malloc

我想为一个指向结构的指针数组分配空间,所以这就是我所做的。

typedef struct A_example{
  struct B_example* B_array[MAX_SIZE];
} A
typedef struct B_example{
  int a;
}B
A A_array[MAX_SIZE2];

所以为A_array的元素分配B_Array的内存我这样做:

A_array[current_element].B_array[i] = (struct B_example*)malloc(sizeof(struct B_example)); 

这是对的吗?我应该如何释放内存呢?

2 个答案:

答案 0 :(得分:2)

您的分配似乎是正确的(除了标准建议之外,通常不会强制转换malloc)。您可以free通过free(A_array[current_element].B_array[i]);发送@GET @Path("/downloaddocument") @Produces("application/pdf") public Response downloadDocument(@QueryParam("Regno") String Regno) { //Code }

答案 1 :(得分:0)

是的,如果你不想让内存泄漏。