C中記憶體與指標的理解

2021-09-22 16:58:56 字數 557 閱讀 6883

#include#include//程式**指令,define定義的常量---**區(唯讀)

//全域性(關鍵)變數/常量,靜態(關鍵)變數/常量,常量字串---靜態區

//靜態區的內容在總個程式的生命週期內都存在,由編譯器在編譯的時候分配。

//區域性變數---棧區

//棧區上的內容只在函式的範圍內存在,當函式執行結束,這些內容也會自動被銷毀。其特點是效率高,但空間大小有限。

//由malloc或者realoc,calloc分配的記憶體區域---堆區

//堆區其生命週期由free決定。

#define pi 3.14 //

//全域性變數

int a = 10;

int b[5] = ;

int const c = 2;

void run2();

void main()

//run1是程式**,所以儲存在**區

void run1()

}void run2()

int add(int a, int b)

C指標與記憶體

指標是c c 中重要的構造型別,指標賦予了 c c 程式直接訪問和修改記憶體的能力。c c 的許多重要應用,如編譯 os 嵌入式開發都依賴於這種能力。馮諾依曼體系的計算機記憶體儲存指令和資料,我們可以將其抽象為指令區和資料區 當然實際情況要複雜得多 資料區中包含棧 stack 和堆 heap 區,棧...

C 記憶體與指標

1 int year year 1000 記憶體位址在0028ff44 23 int ptr year int 即宣告了乙個指標型變數,指標是乙個變數,儲存的是乙個變數的位址。45 在宣告語句中,可以把 看作是指標的型別 67 ptr year year 取變數的位址,即ptr year 0028f...

C 中this指標的理解

先要理解class的意思。class應該理解為一種型別,象int,char一樣,是使用者自定義的型別。用這個型別可以來宣告乙個變數,比如int x,myclass my等等。這樣就像變數x具有int型別一樣,變數my具有myclass型別。理解了這個,就好解釋this了,my裡的this 就是指向m...