什么是棧存儲區(qū)?
在C++中,內存分成4個區(qū),他們分別是堆,棧,靜態(tài)存儲區(qū)和常量存儲區(qū)
1、棧,就是那些由編譯器在需要的時候分配,在不需要的時候自動清除的變量的存
儲區(qū).里面的變量通常是局部變量,函數參數等.
2、堆,又叫自由存儲區(qū),它是在程序執(zhí)行的過程中動態(tài)分配的,它最大的特性就是動.
態(tài)性.由new分配的內存塊,他們的釋放編譯器不去管,由我們的應用程序去控制,
一般一個new就要對應一個delete.如果程序員沒有釋放掉,那么在程序結束后,
操作系統(tǒng)會自動回收.如果分配了堆對象,卻忘記了釋放,就會產生內存泄漏.而
如果已釋放了對象,卻沒有將相應的指針置為NULL,該指針就是"懸掛指針".
3、靜態(tài)存儲區(qū).所有的靜態(tài)對象,全局對象都于靜態(tài)存儲區(qū)分配.
4、常量存儲區(qū),這是一塊比較特殊的存儲區(qū),他們里面存放的是常量,不允許修改
(當然,你要通過非正當手段也可以修改,而且方法很多)
常量字符串都存放在靜態(tài)存儲區(qū),返回的是常量字符串的首地址.
上一篇遠程教育好畢業(yè)嗎
下一篇手機懸浮秒表怎么設置出來