2000字范文,分享全网优秀范文,学习好帮手!
2000字范文 > c语言 结构体指针 free 释放内存

c语言 结构体指针 free 释放内存

时间:2022-06-11 00:28:21

相关推荐

c语言 结构体指针 free 释放内存

1.结构体定义如下

struct node {int footpath_id;double deltaz;char* address;char* clue_sa;};struct dict {struct node record;struct dict* next;};

2.内存释放free()

结构体释放时实体变量intdouble之类会一起释放掉,但char*指针不会,因此需要先释放掉char*指针再释放结构体。

3.代码

这是释放结构体链表内存的代码

void free_dict(struct dict* dict1) {struct dict* now = dict1;struct dict* nx;while (now != NULL) {nx = now;now = now->next;free_node(nx->record);free(nx);}dict1 = NULL;}void free_node(struct node record) {free(record.address);free(record.clue_sa);}

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。