1 記憶體分割槽模型

2022-07-07 15:24:11 字數 1584 閱讀 8044

**區:所有的**都會放這裡

全域性區:

棧:由編譯器管理記憶體的分配和釋放

堆:由程式設計師分配和釋放

**區和全域性區都是程式執行前分配的兩個區域

全域性區:全域性變數、靜態變數、常量(const)

只要沒有寫到函式體中的都是全域性變數

static靜態變數也會放到全域性區

常量: 

字串常量:雙引號引起來的都是字串常量

const修飾變數

const修飾全域性變數:全域性常量。全域性區存放。

const修飾區域性變數:不在全域性區,跟區域性變數一樣存放在棧用

棧區的資料由編譯器管理開闢和釋放

//在堆區開闢資料

的基本語法

int*func()

void

test01()

//2.在堆區利用new開闢乙個陣列

void

test02()

//釋放

delete arr; //

釋放陣列得加乙個陣列才可以,告訴編譯器我要釋放乙個連續空間

}int

main()

C 核心程式設計 1 記憶體分割槽模型

c 程式在執行時,將記憶體大方向劃分為4個區域 區 存放函式體的二進位制 由作業系統進行管理的 全域性區 存放全域性變數和靜態變數以及常量 棧區 由編譯器自動分配釋放,存放函式的引數值,區域性變數等 堆區 由程式設計師分配和釋放,若程式設計師不釋放程式結束時由作業系統 記憶體四區意義 不同區域存放的...

1 記憶體分割槽模型以及new delete操作

c 程式在執行時,將記憶體大方向分為 4 個區域,不同區域 存放的資料,賦予不同的生命週期,給我們更大的靈活程式設計 在程式編譯後,生成了exe可執行檔案,未執行前分為 2 個區域 1 區 存放 cpu 的機器指令 特點 2 全域性區 全域性變數和靜態變數存,還包含了常量區,字串常量和其他常量也存放...

C 基礎 記憶體模型記憶體分割槽模型

區 存放函式體的二進位制 由作業系統進行管理 全域性區 存放全域性變數和靜態變數以及常量 棧區 由編譯器自動分配釋放,存放函式的引數值 區域性變數等 堆區 由程式設計師分配和釋放,若程式設計師不釋放,程式結束時由作業系統 存放cpu執行的機器指令,區是共享的,只有乙份 是唯讀的。存放全域性變數 定義...