iOS內(nèi)存分配五大區(qū):
棧區(qū),堆區(qū),靜態(tài)區(qū)(全局區(qū)),常量區(qū),代碼區(qū)
動態(tài)數(shù)據(jù)區(qū)一般就是”堆椈つ危”,棧是線性結(jié)構(gòu),堆是鏈式結(jié)構(gòu). 本地變量在堆棧中.通過堆棧的基地址和偏移量來訪問本地變量
動態(tài)內(nèi)存分配有系統(tǒng)根據(jù)程序需要即時分配,且分配的大小就是程序要求的大小.
全局變量(一般用static修飾的變量)和靜態(tài)變量分配在靜態(tài)區(qū)(需要預先分配存儲空間)
靜態(tài)內(nèi)存分配:分配固定大小的內(nèi)存分配方法,大多情況下會浪費大量的內(nèi)存空間,少數(shù)情況下,當定義的數(shù)組不夠大時,會引起越界.
局部變量采用棧的方式存放