棧: 存放函數(shù)的局部變量、函數(shù)參數(shù)、返回地址等,由編譯器自動分配和釋放。
創(chuàng)新互聯(lián)專注于企業(yè)營銷型網(wǎng)站建設、網(wǎng)站重做改版、潁泉網(wǎng)站定制設計、自適應品牌網(wǎng)站建設、成都h5網(wǎng)站建設、商城網(wǎng)站開發(fā)、集團公司官網(wǎng)建設、成都外貿網(wǎng)站建設、高端網(wǎng)站制作、響應式網(wǎng)頁設計等建站業(yè)務,價格優(yōu)惠性價比高,為潁泉等各大城市提供網(wǎng)站開發(fā)制作服務。堆: 用戶動態(tài)申請的局部內存空間,一般由用戶釋放,(目前,進程退出OS也自動回收的)。
全局區(qū)/靜態(tài)存儲區(qū)(.bss 段和 .data 段): 存放全局變量和靜態(tài)變量,OS自動釋放,(C++ 中不再區(qū)分未初始化的 .bss 段,和初始化的.data 段)。
常量存儲區(qū)(.data 段): 存放的是常量,進程退出自動釋放。
代碼區(qū)(.text 段): 存放代碼,可執(zhí)行。二進制文件
內核? ?(高地址段, 0xFFFF FFFF) |
棧? ? ? (向下生長) |
堆? ? ? ? (向上生長) |
數(shù)據(jù)段(含全局的,靜態(tài)的,常理的) |
代碼段? (低地址段) |
棧是系統(tǒng)提供的數(shù)據(jù)結構,
計算機會在底層對棧提供支持:分配專門的寄存器存放棧的地址,壓棧出棧都有專門的指令執(zhí)行,這就決定了棧的效率比較高。
堆則是C/C++函數(shù)庫提供的,它的機制是很復雜的,在堆內存中搜索可用的足夠大小的空間,如果沒有足夠大小的空間,系統(tǒng)就重新管理內存空間,保證分足夠大小的內存。
堆內存的首地址記錄分配的大小,方便delete,回收
你是否還在尋找穩(wěn)定的海外服務器提供商?創(chuàng)新互聯(lián)www.cdcxhl.cn海外機房具備T級流量清洗系統(tǒng)配攻擊溯源,準確流量調度確保服務器高可用性,企業(yè)級服務器適合批量采購,新人活動首月15元起,快前往官網(wǎng)查看詳情吧