形象描述malloc和free函式以及野指…
你的程式(簡稱“你”)是一個客人。
管家有很對水桶,可以用來裝水的。
malloc的意思就是“管家,我要XX個水桶”。
管家首先看一下有沒有足夠的水桶給你,如果沒有,那麼告訴你不行。如果夠,那麼登記這些水桶已經被使用了,然後告訴你“拿去用吧”。
free的意思就是說:“管家我用完了,還你!”。
至於你是不是先把水倒乾淨才給管家,那麼是自己的事情了。--是不是清零。
管家也不會將你歸還的水桶倒倒幹清(他有那麼多水桶,每個歸還都倒乾淨豈不累死了)。反正其他用的時候自己會處理的啦。
free之後將指標清零隻是提醒自己,這些水桶已經不是我的了,不要再完裡面放水了,^_^
如果free了之後還用那個指標的話,就有可能管家已經將這些水桶給了其他人裝飲料的了,你卻往裡面撒了泡尿。好的管家可能會對你的行為表示強烈的不滿, 殺了你(非法操作)--這是最好的結果,你知道自己錯了(有錯就改嘛)。一些不好的管家可能忙不過來,有時候抓到你作壞事就懲罰你,有時候卻不知道去那裡 了--這是你的惡夢,不知道什麼時候、怎麼回事情自己就死了。不管怎麼樣,這種情況下很有可能有人要喝尿--不知道是你的老闆還是你的客戶了.^_^。
所以啊,好市民當然是還了給管家的東西就不要再佔著啦,.^_^。