蟠桃為什么是扁的 蟠桃為什么是扁的傳說(shuō)
2022-12-03
更新時(shí)間:2022-08-09 02:23:58作者:未知
棧的初始狀態(tài)簡(jiǎn)單的說(shuō)其實(shí)就是:在棧中還沒(méi)有將元素進(jìn)行進(jìn)棧或者出棧的運(yùn)動(dòng)時(shí),棧本身最開(kāi)始的狀態(tài)(也就是說(shuō):在沒(méi)有進(jìn)行元素的進(jìn)出棧時(shí),棧中的棧頂指針和棧底指針?biāo)赶虻奈恢眠@樣一個(gè)狀態(tài))。
棧它是一種具有后進(jìn)先出性質(zhì)的數(shù)據(jù)結(jié)構(gòu),也就是說(shuō)后存放的先取,先存放的后取。這就如同要取出放在箱子里面底下的東西(放入的比較早的物體),首先要移開(kāi)壓在它上面的物體(放入的比較晚的物體)。內(nèi)存中的棧區(qū)處于相對(duì)較高的地址以地址的增長(zhǎng)方向?yàn)樯系脑挘瑮5刂肥窍蛳略鲩L(zhǎng)的。棧中分配局部變量空間,堆區(qū)是向上增長(zhǎng)的用于分配程序員申請(qǐng)的內(nèi)存空間。另外還有靜態(tài)區(qū)是分配靜態(tài)變量,全局變量空間的;只讀區(qū)是分配常量和程序代碼空間的;以及其他一些分區(qū)。
由于棧上的空間是自動(dòng)分配自動(dòng)回收的,所以棧上的數(shù)據(jù)的生存周期只是在函數(shù)的運(yùn)行過(guò)程中,運(yùn)行后就釋放掉,不可以再訪問(wèn)。棧在Windows下,棧是向低地址擴(kuò)展的數(shù)據(jù)結(jié)構(gòu),是一塊連續(xù)的內(nèi)存的區(qū)域。這句話的意思是棧頂?shù)牡刂泛蜅5淖畲笕萘渴窍到y(tǒng)預(yù)先規(guī)定好的,在 WINDOWS下,棧的大小是2M(也有的說(shuō)是1M,總之是一個(gè)編譯時(shí)就確定的常數(shù)),如果申請(qǐng)的空間超過(guò)棧的剩余空間時(shí),將提示overflow。因此,能從棧獲得的空間較小。