| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 3912 人关注过本帖
标题:单链表中删除结点一定要用free么
只看楼主 加入收藏
不同认为
Rank: 1
等 级:新手上路
帖 子:93
专家分:3
注 册:2015-11-25
结帖率:57.14%
收藏
已结贴  问题点数:20 回复次数:4 
单链表中删除结点一定要用free么
比如用s保存要被删除的结点p,那么s=p,p=p–>next,一定要在写一句free(s),才算把结点删除掉了么
2015-12-13 09:56
未来大仙
Rank: 6Rank: 6
来 自:黑窟窿
等 级:侠之大者
威 望:4
帖 子:263
专家分:491
注 册:2015-6-20
收藏
得分:0 
你知道free 有什么用吗?

好好学习,天天向上!
2015-12-15 22:07
不同认为
Rank: 1
等 级:新手上路
帖 子:93
专家分:3
注 册:2015-11-25
收藏
得分:0 
回复 2楼 未来大仙
释放空间 释放掉的同时 它所指向的内容是被清空了还是什么
2015-12-16 09:34
wengbin
Rank: 10Rank: 10Rank: 10
来 自:陕西西安
等 级:贵宾
威 望:19
帖 子:370
专家分:1846
注 册:2015-5-8
收藏
得分:20 
free释放的是内存空间,你的s和p应该是指向节点的指针吧?free(s)将释放s指向的内存空间,也就是说,这时s还是存在的,而且存的地址没变,但这时s指向的内容已经不存在了或者说不知道指向的内容是什么,这是很危险的,所以一般用free()后还要向s指向NULL,避免野指针的出现
2015-12-16 10:43
未来大仙
Rank: 6Rank: 6
来 自:黑窟窿
等 级:侠之大者
威 望:4
帖 子:263
专家分:491
注 册:2015-6-20
收藏
得分:0 
回复 3楼 不同认为
既然你知道,如果不释放已经不使用的空间  后果会怎么样?

好好学习,天天向上!
2015-12-17 10:06
快速回复:单链表中删除结点一定要用free么
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.034374 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved