问答文章1
问答文章501
问答文章1001
问答文章1501
问答文章2001
问答文章2501
问答文章3001
问答文章3501
问答文章4001
问答文章4501
问答文章5001
问答文章5501
问答文章6001
问答文章6501
问答文章7001
问答文章7501
问答文章8001
问答文章8501
问答文章9001
问答文章9501
C语言二叉树
发布网友
发布时间:2022-04-25 13:58
我来回答
共
1
个回答
热心网友
时间:2023-10-05 13:30
在create_tree中,参数t只在一开始被bintree初始化,此时他们同时指向未初始化的内存。当执行到t=(tree * )malloc(sizeof(tree));时候,t被赋予了新的内存空间,注意,这里新分配的内存仅仅是分配给了t,与bintree没有关系。每次进入create_tree后都为局部变量t分配内存,而你在函数退出之后无法进行内存回收,进而造成内存泄露。
正确的做法是,给create_tree传递一个指针类型的引用,tree *&t,这样你在操作t的时候就像在操作bintree一样,才能达到给bintree分配内存的目的。
最后别忘了写一个释放内存的方法:
void free_tree(tree *t)
{
if (t)
{
free_tree(t->lchild);
free_tree(t->rchild);
printf("\n%c has freed.", t->data);
free(t);
}
}
声明:
本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
李卓彬工作简历
林少明工作简历
广东工业职业技术学院怎么样
郑德涛任职简历
唐新桂个人简历
土地入股的定义
ups快递客服电话24小时
贷款记录在征信保留几年?
安徽徽商城有限公司公司简介
安徽省徽商集团新能源股份有限公司基本情况
c二叉树 建立
c语言二叉树什么意思?学习要有什么基础?
数据结构c二叉树的算法
计算机c语言中什么是“二叉树”?
c语言 二叉树
计算机c语言中 什么是二叉树
emotional是什么意思
什么叫emo
Emotional中文怎么读
emotional好像有三种意思都是什么?
emo 什么意思?
Emotional是什么意思啊
emotionad中文
Emotional是什么意思?
我emotional了是什么意思
emonational中文是什么?
英语emotional什么意思
“emotional”什么意思?
通过滴滴打出租车价格是不是比直接叫出租车贵些
滴滴打车贵吗?
c语言二叉树代码求解
c语言 c语言 二叉树构造问题
关于c语言二叉树
c语言二叉树结点
C语言二叉树的应用
C语言二叉树的创建和遍历
c语言二叉树的问题
怎么查看自己在QQ防沉迷上绑定的身份证号码?
如何用专业GPU软件辨别显卡的级别
专业显卡和游戏显卡的区别?
专业显卡和普通显卡的区别
专业显卡跟普通显卡有什么区别?
专业显卡和游戏显卡究竟有什么区别
什么情况下需要用专业图形显卡?
专业显卡与普通显卡的区别 作图的显卡
专业显卡是什么意思?
西双版纳想买一顶遮阳帽子竹编的去哪里买女式尖头帽
维佩洛女士的遮阳帽如何?
夏天女性正确防晒知识,防晒要注意哪些事项
速干360度透气遮阳帽品牌brands这个品牌的女式㡌在哪里买到。
懂视IT 51dongshi.com 版权所有
Copyright © 2019-2024