作者liu2007 (薯)
看板C_and_CPP
标题[问题] 关於记忆体free.....
时间Thu Oct 22 19:20:00 2009
上课的时候
如果程式里有写到链节串列
老师都会叮咛我们要记得把所有节点free掉
要不然一直test程式会一直吃掉记忆体
除非重开机 reboot (我同学说的,不知对否....)
那麽我们使用int float char .........等等的变数呢?
为什麽不需要特别把它们free掉呢?
我自己猜是因为当run 结束之後IDE会自动把这些保留字型态的变数free掉
不知道对不对.....
此外
我又想到
以後开发程式出来後并没有IDE
当程式关掉之後并没有东西帮我们free掉变数
请问是否要自己养成习惯
在程式结束後把所有变数free掉??
如果猜错的话就见笑了 Orz....
--
◣█◥
█ ̄ ̄ 干你妈的洨王子 国家现在需要你
█⊙⊙
◢◤ 皿 ◥ 欢迎加入 伟大消波块的行列
◢◤ @m◥
ψQSWEET ◥◣█◢◣█◢ 100个不嫌多 1个不嫌少 3Q!!
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.134.115.251
1F:推 nowar100:你可以先了解一下stack和heap上的差异 10/22 19:27
2F:→ nowar100:自动变数是长在前者 自己手动要的变数是长在後者 10/22 19:28
3F:→ nowar100:stack会自己消长 heap你不还给OS就会一值占用到程式结束 10/22 19:29
4F:推 QQ29:也不用重开机吧 关掉程式就好了~ 10/22 19:30
5F:推 chchwy:有malloc才要free 10/22 19:31
6F:推 joefaq:malloc是跟OS要一块记忆体来用 所以你程式结束OS会释放 10/22 20:57