C 學習 二 指標與動態記憶體分配

2021-07-11 09:52:18 字數 711 閱讀 1644

變數的位址

變數a占用的是記憶體的2000~2003四個單元,變數a的位址為2000。源**中寫a=5;我們可以理解為將5賦給變數a;而計算機在執行程式時,只是將5送入2000~2003四個儲存單元中。

2. 程式記憶體結構

- **段:程式**,由exe檔案中相應內容載入記憶體後形成,唯讀

- 靜態資料區:全域性變數、靜態資料成員和靜態區域性變數。全域性變數在程式啟動後占用儲存空間;靜態區域性變數在第一次執行時建立

- 棧區:區域性變數、函式引數與返回值,由作業系統自動維護

- 堆區:由程式設計師動態請求的資料區,執行時確定,由程式設計師負責申請和釋 放

3. 動態記憶體分配

使用new請求記憶體時,可能由於記憶體不足會造成失敗,應該隨時進行檢測。

int *p;

if((p=new int) == null)

int main()

void xhg(int

*a,int

*b)int main()

void

sum(int &a, int b)

int main()

c 學習筆記(二) 指標

int balance 5 int ptr ptr balance ptr是指向陣列balance的指標 或者這樣也是可以的 ptr balance balance和ptr的區別是ptr是變數,balance是常量 ptr 1 這是可以的 ptr balance 這是不可以的,ide會報錯說表示式必...

指標學習二 指標 位址

通過位址的呼叫來改變變數的值 includevoid f int p void g int k int main void f int p void g int k i 0063fe9c p 0063fe9c p 6 k 26定義乙個變數p,它位於2000單元,該單元存放了變數x的位址1000。此時...

C語言 二 指標

一 指標概述 1.簡介 2.初始化 1 先定義後初始化 int a 10 int p p a 2 定義並初始化 int a 10 int p a 備註 在資料型別後,變數名稱前的 是乙個說明符,用來說明該變數是乙個指標變數。如果前面沒有資料型別,如 p,這裡的 是乙個指標運算子,用來取出指標變數所指...