首页 新闻 会员 周边 捐助

C++指针释放的本质是什么

0
[已解决问题] 解决于 2012-11-12 11:19

指针被free后其地址不变,仍然非空,那么释放的本质是什么?仅代表可以被重新分配吗?

何合的主页 何合 | 初学一级 | 园豆:177
提问于:2012-11-09 10:08
< >
分享
最佳答案
1

free掉的指针变量表示的是该指针变量指向的内存空间已经不由该程序占用,系统可以将其回收并用做他途。指针变量指向的内存地址当然是不变的,只是它已经不会再被这个程序使用。当然可以通过重新malloc重新分配,但此时指针变量的值(即指针指向的地址)会发生改变。

奖励园豆:5
飞鸟_Asuka | 菜鸟二级 |园豆:393 | 2012-11-09 11:17

谢谢

何合 | 园豆:177 (初学一级) | 2012-11-12 11:16
其他回答(4)
1

应该代表指针指向的内存地方,可以被系统回收

chenping2008 | 园豆:9836 (大侠五级) | 2012-11-09 10:14

谢谢

支持(0) 反对(0) 何合 | 园豆:177 (初学一级) | 2012-11-12 11:16
1

应该释放内在空间

jerry-Tom | 园豆:4077 (老鸟四级) | 2012-11-09 10:31

3q

支持(0) 反对(0) 何合 | 园豆:177 (初学一级) | 2012-11-12 11:16
1

指针是个地址,就是告诉系统这个地址的内存我已经不用了,系统可以重新分配给别的程序了,这个地址的值当然不会变

sjun | 园豆:206 (菜鸟二级) | 2012-11-09 15:39

3q

支持(0) 反对(0) 何合 | 园豆:177 (初学一级) | 2012-11-12 11:16
1

应该是记录被清空了吧

angelshelter | 园豆:9914 (大侠五级) | 2012-11-10 10:51

3q

支持(0) 反对(0) 何合 | 园豆:177 (初学一级) | 2012-11-12 11:16
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册