堆 和 棧的 區(qū)分(經(jīng)典)轉(zhuǎn)載?1篇理解堆和棧區(qū)分的好?文章
此?文章雖然是?面向C/C++程序員寫得,但是對(duì)我們iOS程序員還是很有幫助的。
堆和棧的區(qū)分
?1、豫備知識(shí)―程序的內(nèi)存分配?1個(gè)由C/C++編譯的程序占?用的內(nèi)存分為以下?幾個(gè)部份1、棧區(qū)(stack)―
由編譯器?自動(dòng)分配釋放 ,寄存函數(shù)的參數(shù)值,局部變量的值等。其
操作?方式類似于數(shù)據(jù)結(jié)構(gòu)中的棧。
2、堆區(qū)(heap)
―
?1般由程序員分配釋放, 若程序員不釋放,程序結(jié)束時(shí)可能由OS回
收 。注意它與數(shù)據(jù)結(jié)構(gòu)中的堆是兩回事,分配?方式倒是類似于鏈表,呵呵。3、全局區(qū)(靜態(tài)區(qū))(static)―,全局變量和靜態(tài)變量的存儲(chǔ)是放在?1塊的,初始化的
全局變量和靜態(tài)變量在?1塊區(qū)域, 未初始化的全局變量和未初始化的靜態(tài)變量在相鄰的另
?1塊區(qū)域。 -
程序結(jié)束后由系統(tǒng)釋放。
4、?文字常量區(qū)
―常量字符串就是放在這?里的。 程序結(jié)束后由系統(tǒng)釋放5、程序代碼區(qū)―寄存函數(shù)體的?2進(jìn)制代碼。
?2、例?子程序
這是?1個(gè)先輩寫的,?非常詳細(xì)
//main.cpp
int a = 0; 全局初始化區(qū)
char *p1;
全局未初始化區(qū)
main()
{
int b; 棧
char s[] = "abc";
棧
char *p2;
棧
char *p3 = "123456"; 123456
主站蜘蛛池模板:
欧美在线视频 一区二区
|
九色九色九色在线综合888
|
亚洲高清日韩精品第一区
|
亚洲精品视频在线看
|
欧美精品一区二区久久
|
午夜视频网站在线观看
|
久久婷五月天
|
中文字幕第一页在线视频
|
日韩视频高清免费看
|
美女私人影院
|
欧美日韩中文国产一区
|
最近视频中文在线播放
|
久久精品国产免费高清
|
日韩精品在线一区二区
|
少妇下面好紧好多水真爽播放
|
成a人v|
国产jizzjizz免费看麻豆
|
欧美午夜性刺激在线观看免费
|
一级做a爰片性色毛片新版的
|
日韩精品亚洲人成在线播放
|
欧美日韩一二三四区
|
成人欧美一区二区三区在线
|
亚洲 欧美 在线观看
|
色综合一本到久久亚洲91
|
一级aaaaaa片毛片在线播放
|
日韩激情中文字幕一区二区
|
中文字幕人成不卡一区
|
中文字幕3|
日本叼嘿视频
|
国产aaa级一级毛片
国产aaa免费视频国产
|
麻豆va一区二区三区久久浪
|
欧美激情一区二区
|
丁香婷婷综合五月六月
|
久久精品一区二区三区日韩
|
多人做人爱视频大全在线观看
|
国产精品久久久久久久久
|
国产男女爽爽爽爽爽免费视频
|
www.av在线|
手机看片国产高清
|
free性欧美18一19hd
|
日本一区二区三区四区在线观看
|