一級指標和二級指標

2021-10-03 08:46:23 字數 554 閱讀 1613

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

總結一句話:一級指標做函式引數, 在函式內做形參做重新指向並 不會影響實參的指向。

一級指標需要注意的問題:

1、不要在函式中,改變形參的指向來達到改變實參指向的效果,因為形參和實參只是兩個指向同乙個記憶體空間的兩個指標;

2、因為形參和實參指向的是同乙個記憶體空間,所以可以在形參中改變其指向空間的值,如此實參指向的位址空間也將發生改變。

通過二級指標,可以方便地通過改變形參的指向,來達到改變實參的指向的目的。

一級、二級指標都可以用作函式的返回值,使用一級指標作為函式引數的返回值,需要在呼叫函式之前申請記憶體空間,方便在函式中對該記憶體空間賦值,達到將函式的返回結果傳出來的目的。 使用二級指標,無需申請記憶體空間,因為在函式內直接改變形參的指向就可以改變實參的指向, 指向的記憶體空間,只需要在函式內部申請即可(棧空間不可,因為棧空間用完即被釋放,無法返回出來,可以使用動態記憶體分配)。

一級指標二級指標

例如 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...

十二 c 指標 一級指標和二級指標

指標是一種非常方便靈活的東西,原來學c的時候學指標的時候記得課本一堆亂七八糟的注意事項,其實如果只是做做機試題的話根本沒那麼多用法,就會最基本就行 比如乙個例子 求乙個n 4矩陣裡面存放的最大元素,如果知道具體數字,最為初學者就直接兩個for迴圈找到最大的值了。其實這樣也不難,多了乙個一維大小是未知...