c語(yǔ)言棧區(qū)是什么意思?
c語(yǔ)言棧區(qū):棧區(qū)是用來(lái)存放局部變量的,比如函數(shù)內(nèi)部定義的int a,int b,const int a,char p,char arr[ ],還有函數(shù)的形參等等都是存放在棧區(qū)。
棧區(qū)的數(shù)據(jù)由編譯器管理,調(diào)用完之后就自動(dòng)釋放,壓棧,出棧。先進(jìn)后出的原則,比如當(dāng)你執(zhí)行到函數(shù)調(diào)用的時(shí)候,編譯器會(huì)先把下一條代碼的地址壓入棧中,再把你調(diào)用的那個(gè)函數(shù)里的一些局部變量啊,形參啊等等壓入棧中,等你函數(shù)調(diào)用執(zhí)行完畢。棧就會(huì)把你調(diào)用的這個(gè)函數(shù)之前壓入棧的變量和形參全部清除出棧,之后根據(jù)下一條代碼的地址,接著執(zhí)行程序,以后的程序也都是這么執(zhí)行。棧區(qū)是有大小的,一般是1M左右,所以別定義太大的數(shù)組。