c語言static 申明私有變量,函數外,文件外不可訪問。
static變量是不會在棧中分配內存的,其內存在全局數據區分配
statically allocated的變量在編譯和鏈接期間分配內存,相對于dynamically allocated的裝載和運行期間。
靜態分配的靜態體現在:1.變量分配的位置是全局數據區 2.大小運行前已知(但是真正分配內存還是在與運行之前,其采用的應是虛擬地址,后期回添)。
當我們在運行前不知道需要內存的大小,不想在整個程序運行期間都有內存,有可重入和遞歸函數的時候,就需要動態分配內存了。
內存分配圖