久久久久久久av_日韩在线中文_看一级毛片视频_日本精品二区_成人深夜福利视频_武道仙尊动漫在线观看

c/c++堆棧分布及其設置方法

這篇文章主要介紹了c/c++堆棧分布及其設置方法,需要的朋友可以參考下

一個由C/C++編譯的程序占用的內存分為以下幾個部分
1、棧區(stack)— 由編譯器自動分配釋放 ,存放函數的參數名,局部變量的名等。其操作方式類似于數據結構中的棧。
2、堆區(heap)— 由程序員分配釋放, 若程序員不釋放,程序結束時可能由OS回收。注意它與數據結構中的堆是兩回事,分配方式倒是類似于鏈表。
3、全局區(靜態區)(static)—全局變量和靜態變量的存儲是放在一塊的,初始化的全局變量和靜態變量在一塊區域, 未初始化的全局變量和未初始化的靜態變量在相鄰的另一塊區域。程序結束后由系統釋放。
4、文字常量區—常量字符串就是放在這里的,程序結束后由系統釋放 。
5、程序代碼區— 存放函數體的二進制代碼。

復制代碼 代碼如下:

int a = 0;//全局初始化區
char*p1;//全局未初始化區
main()
{
    intb;//棧
    chars[] = "abc";//棧
    char*p2;//棧
    char*p3 = "123456";//123456\0在常量區,p3在棧上。
    static int c =0;//全局(靜態)初始化區
    p1 = (char*)malloc(10);
    p2 = (char*)malloc(20);//分配得來的10和20字節的區域就在堆區。
}

strcpy(p1, "123456"); 123456\0放在常量區,編譯器可能會將它與p3所指向的”123456"優化成一個地方。

【網站聲明】本站部分內容來源于互聯網,旨在幫助大家更快的解決問題,如果有圖片或者內容侵犯了您的權益,請聯系我們刪除處理,感謝您的支持!

相關文檔推薦

主站蜘蛛池模板: 亚洲欧洲一区 | 成人激情视频 | 美女无遮挡网站 | 一级理论片 | 久久精品伊人 | 国产精品美女久久久久久久久 | 久久久久久中文字幕 | 99国产精品99久久久久久粉嫩 | 白白色免费视频 | 久久精选视频 | 国产成年妇视频 | 成年人午夜视频 | 波多野吉衣一二三区乱码 | 懂色av一区二区三区 | 成人三级在线 | 日韩hd| 日韩视频一区二区三区 | 偷偷操网站 | 国产二三区| 国产精品欧美一区二区 | 天堂成人 | 九九九精品视频 | 天海翼一区 | 视频一区在线播放 | 亚洲性天堂 | 黄色成人小视频 | 成人在线视频免费 | 免费毛片在线播放免费 | 一级片在线观看视频 | 亚洲伦理在线观看 | 少妇精品视频 | 韩日在线视频 | 免费国产黄色 | 中文字幕激情 | 91看片淫黄大片 | 韩国av一区二区 | 国产精品二区一区二区aⅴ污介绍 | 国产精品二 | 秋霞国产 | 欧美激情成人 | 日韩一区二区三区在线 |