c語(yǔ)言static 申明私有變量拦止,函數(shù)外,文件外不可訪問(wèn)糜颠。
static變量是不會(huì)在棧中分配內(nèi)存的汹族,其內(nèi)存在全局?jǐn)?shù)據(jù)區(qū)分配
statically allocated的變量在編譯和鏈接期間分配內(nèi)存,相對(duì)于dynamically allocated的裝載和運(yùn)行期間其兴。
靜態(tài)分配的靜態(tài)體現(xiàn)在:1.變量分配的位置是全局?jǐn)?shù)據(jù)區(qū) 2.大小運(yùn)行前已知(但是真正分配內(nèi)存還是在與運(yùn)行之前顶瞒,其采用的應(yīng)是虛擬地址,后期回添)元旬。
當(dāng)我們?cè)谶\(yùn)行前不知道需要內(nèi)存的大小榴徐,不想在整個(gè)程序運(yùn)行期間都有內(nèi)存守问,有可重入和遞歸函數(shù)的時(shí)候,就需要?jiǎng)討B(tài)分配內(nèi)存了坑资。
內(nèi)存分配圖