C C 變數在記憶體中的分布

2021-06-10 05:51:21 字數 303 閱讀 4983

摘自:

c/c++變數在記憶體中的分布在筆試時經常考到,雖然簡單,但也容易忘記,因此在這作個總結,以加深印象。

先寫乙個測試程式:

#include #include int g_i = 100;int g_j = 200;int g_k, g_h;int main()

執行結果如下:

可以看出,主函式中棧的位址都要高於子函式中引數及棧位址,證明了棧的伸展方向是由高位址向低位址擴充套件的。主函式和子函式中靜態資料的位址也是相鄰的,說明程式會將已初始化的全域性變數和表態變數分配在一起,未初始化的全域性變數和表態變數分配在另一起。

c c 變數在記憶體中的分布

c c 變數在記憶體中的分布在筆試時經常考到,雖然簡單,但也容易忘記,因此在這作個總結,以加深印象。先寫乙個測試程式 執行結果 release版本 如下 可以看出 1.變數在記憶體位址的分布為 堆 棧 區 全域性靜態 常量資料 2.同一區域的各變數按宣告的順序在記憶體的中依次由低到高分配空間 只有未...

C C 變數在記憶體中的分布

c c 變數在記憶體中的分布在筆試時經常考到,雖然簡單,但也容易忘記,因此在這作個總結,以加深印象。先寫乙個測試程式 view plain copy to clipboard print?include include int g i 100 int g j 200 int g k,g h int ...

C C 變數在記憶體中的分布

c c 變數在記憶體中的分布在筆試時經常考到,雖然簡單,但也容易忘記,因此在這作個總結,以加深印象。先寫乙個測試程式 view plain copy to clipboard print?include include int g i 100 int g j 200 int g k,g h int ...