C++变量、函数在内存中的情况
生活随笔
收集整理的這篇文章主要介紹了
C++变量、函数在内存中的情况
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
該博文為原創(chuàng)文章,未經(jīng)博主同意不得轉(zhuǎn)載,如同意轉(zhuǎn)載請(qǐng)注明博文出處
本文章博客地址:https://cplusplus.blog.csdn.net/article/details/105066600
變量、函數(shù)在內(nèi)存中的情況
- 一個(gè)C++編譯的程序占用的內(nèi)存分為以下幾個(gè)部分
- 堆棧的理論知識(shí)
- 申請(qǐng)方式
- 申請(qǐng)后的系統(tǒng)響應(yīng)
- 申請(qǐng)大小的限制
- 效率方面
- 存放內(nèi)容方面
- 實(shí)例解說(shuō)
一個(gè)C++編譯的程序占用的內(nèi)存分為以下幾個(gè)部分
1、棧區(qū):由編譯器自動(dòng)分配 存放函數(shù)的參數(shù)值,局部變量的值等,操作方式類似于數(shù)據(jù)結(jié)構(gòu)中的棧。
2、堆區(qū):一般由程序員分配釋放,若程序員不釋放,程序結(jié)束時(shí) 可能 有系統(tǒng)收回。它與數(shù)據(jù)結(jié)構(gòu)中的堆是兩回事。分配方式類似于鏈表。
3、全局區(qū)(靜態(tài)區(qū)):全局變量和靜態(tài)變量是存儲(chǔ)放在一塊的,初始化的全局變量和靜態(tài)變量在一個(gè)區(qū)域,未初始化的在相鄰的另一個(gè)區(qū)域。程序結(jié)束后由系統(tǒng)釋放。
4、文字常量區(qū):常量字符串就存放在這里。程序結(jié)束后有系統(tǒng)自動(dòng)釋放。
5、程序代碼區(qū):存放函數(shù)體的二進(jìn)制代碼。
堆棧的理論知識(shí)
申請(qǐng)方式
總結(jié)
以上是生活随笔為你收集整理的C++变量、函数在内存中的情况的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 建设银行一类卡找不到了怎么处理
- 下一篇: C语言90道试题资料