對於一級指標和二級指標理解

2021-09-24 21:29:07 字數 550 閱讀 9938

一級指標

#include

void

print

(int

*p)int

main()

執行結果

通過一級指標可以修改實參的值。

實參就是在呼叫函式時傳給函式的引數,形參是實參的乙份臨時的拷貝,在被呼叫的函式中雖然值和實參的值一樣,分配的記憶體和實參不一致,函式呼叫開始時,形參被分配記憶體。隨著被呼叫函式執行結束後,形參就會被釋放掉,從而對實參不會造成影響,實參不會因為形參的改變而改變。

而如果實參以指標的形式(實參位址)傳引數,則形參記憶體位址就是實參的記憶體位址,隨著形參被改變。

二級指標可以理解為指向指標的指標,通過傳遞指標可以達到修改數值的目的,那麼修改指標則需要用到指標的指標

int

change

(int

**buf)

intmain()

總而言之,一級指標用於對資料的更改,二級指標用於對資料位址的更改。

一級指標和二級指標

通常用作函式的輸入引數,因為一級指標作為函式引數,在呼叫的時候,實參和形參是不同的記憶體空間,只是,這個記憶體空間存放的指標指向的是同一塊位址,所以形參在函式執行中可以訪問實參指向的記憶體空間,但是形參的指向的改變並不能影響實參。總結一句話 一級指標做函式引數,在函式內做形參做重新指向並 不會影響實...

一級指標二級指標

例如 int p null int代表指標p指向的資料型別是int型,代表這是乙個指標變數,1 指標變數儲存的內容是指向的變數的位址 2 在使用sizeof判斷指標的位元組數時,在32位機器上為4個位元組,在64位機器上為了相容,仍然是四個位元組大小 3 小知識點,不同型別的指標除了指向的變數資料型...

一級指標與二級指標

如下圖所示,整型指標xptr指向變數x的位址。原始碼 include int main 實現方法一如下圖所示,先為二級整型指標ptr分配空間,然後賦值。原始碼 include include int main printf n return 0 執行結果 實現方法二 如下圖所示,先為二級整型指標pt...