下面說明壹下C語言跟內存分配有關的這三種方式:
(1)從靜態存儲區域分配。內存在程序編譯的時候就已經分配好,這塊內存在程序的整個運行期間都存在。例如全局變量,static變量。
(2)在棧上創建。在執行函數時,函數內局部變量的存儲單元都可以在棧上創建,函數執行結束時這些存儲單元自動被釋放,遵循先進後出的原則。棧內存分配運算內置於處理器的指令集中,效率很高,但是分配的內存容量有限。該方式沒有內存碎片產生,程序員無需幹預內存的分配。
(3)從堆上分配,亦稱動態內存分配。程序在運行的時候用malloc或new申請任意多少的內存,程序員自己負責在何時用free或delete釋放內存。動態內存分配方式需要程序員的幹預,而且會產生內存碎片,其生存期由我們決定,使用非常靈活,但問題也最多。
有時候,我看到別人有說有笑的和我媽壹起去鎮上逛街。我是多麽羨慕。看到媽媽為女兒精心挑選的東西,我就感到不安。
我無止境地愛著我的兒子,我很高興回家。寒衣是針線,家書是墨漬。遇憐薄,自求苦。我以人子為恥,不敢嘆息。
生命的綻放是壹朵花,它包含著夢想。對於母親來說,夢想在現實中破碎,經受無數風雨。這個過程沒有歡笑,只有痛苦。她吃苦耐勞,但不放棄,堅持