今天帶大家了解一下什么是一級指標、二級指標、三級指標
1、一級指標
一級指標其實就是我們平時常見的普通指標
如:
int a = 12;
int * b = &a; //一級指標,定義一個指標變數b,將整型變數a的地址(指標)賦值給b
所以首先我們介紹一下什么是指標?
指標其實是一個記憶體地址,對于一個記憶體單元來說,單元的地址即為指標,
而我們平時常用的指標則是指標變數,
指標變數從字面意思上可以看出是存盤指標的一種變數型別,
在C語言中,允許用一個變數來存放指標,這種變數稱為指標變數,
也就是,指標是一個地址,是一個常量,而指標變數卻可以賦予不同的指標(指標也就是地址),是變數,但我們常把指標變數簡稱為指標,
現在大家明白了吧,指標其實就是地址的別稱,而指標變數就是存放這個地址的,所以我們平時說的定義一個指標,就是定義一個指標變數,我們可以給這個指標賦上變數的地址、陣列首地址、結構體首地址等等,
!!!另外注意一下指標變數的賦值只能賦予地址,
另外這里介紹兩個指標有關的運算子,在下面會用到
(1) &:取地址運算子,一般形式為: &變數名
(2) *:指標運算子(也就是獲取該指標所指向的資料),一般形式為: *指標變數
了解什么是指標后,我們來了解什么是二級指標,三級指標,
2.二級指標
二級指標則是指向一級指標的指標,也就是說如果一個指標指向的是另外一個指標,我們就稱它為二級指標,或者指向指標的指標,如:
int a = 12;
int * b = &a; //一級指標
int **c = &b; //二級指標,指標c指向的是指標b,也就是說二級指標c存盤的是一級指標b的地址,
這里要說明的是指標變數也是一種變數,也會占用存盤空間,也可以使用&獲取它的地址,所以二級指標才可以指向一級指標的地址,
3.三級指標
三級指正則是指向二級指標的指標,所以規律就是n 級指標就是 指向 n-1 級指標的 指標
如:
int a = 12;
int * b = &a; //一級指標
int **c = &b; //二級指標,指標c指向的是指標b,也就是說二級指標c存盤的是一級指標b的地址,
int ***d = &c; //三級指標,指標d指向的是指標c的地址
因此我們如果在三級指標前面加一個取地址運算子,也就是&d,則取出的是其自身的存盤地址,
而”*d”則是取到指標c的地址,而”**d”則是取到指標b的地址,而”***d”則是取到a地址上的資料,
想要獲取指標指向的資料時,一級指標加一個*,二級指標加兩個*,三級指標加三個*
因為指標相關的知識內容比較多,因此這里只介紹部分~
另外本人水平有限,上述資訊僅供參考,如有錯誤和不妥之處,請多多指教,
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/394167.html
標籤:其他
上一篇:計科資訊安全總復習
下一篇:flying-egg 迷宮的實作
