【发布时间】:2021-01-25 07:38:55
【问题描述】:
目前我正在为一个结构动态分配内存,之后我正在为它的一个成员动态分配内存。我的问题是我应该也释放成员,还是只释放结构以及为什么?
#include <stdlib.h>
struct test{
char *test_member;
};
int main(){
struct test *new_test;
// Allocating memory for structure and its member
new_test = (test*)malloc(sizeof(test));
new_test->test_member = (char*)malloc(80);
// Freeing struct member and struct
free(new_test->test_member);
free(new_test);
return 0;
}
【问题讨论】:
-
这是否意味着我不会有任何双重释放问题?谢谢
-
谢谢,刚刚发现了投射的缺点
标签: c data-structures dynamic