神一般的操作,如何玩轉指針之二級指針

C++學習心得11:二級指針

1. 什麼是二級指針

二級指針也是一個普通的指針變量,只是它裡面保存的值是另外一個一級指針的地址 定義: int guizi1 =888; int*guizi2=&guizi1; //1 級指針,保存 guizi1 的地址 int**liujian=&guizi2;//2 級指針,保存 guizi2 的地址,guizi2 本身是一個一級指針變量

神一般的操作,如何玩轉指針之二級指針

二級指針

問題?那麼**Liujian =?(帶著這個疑問我們開始代碼指令)

#include<stdio.h>
#include<stdlib.h>
Int main(void)
{
Int guizi2 =888; //存槍的第 2 個櫃子
int*guizi1=&guizi2; //存第 2 個櫃子地址的第一個櫃子
int**liujian=&guizi1;//手握第一個櫃子地址的劉建
printf("劉建打開第一個櫃子,獲得第二個櫃子的地址:0x%p\\n",*liujian);
printf("guizi2 的地址:0x%p\\n",&guizi2);
int*tmp; tmp=*liujian;
printf("訪問第二個櫃子的地址,拿到槍:%d\\n",*tmp);
printf("劉建一步到位拿到槍:%d\\n",**liujian); //縮寫成 **liujian
system("pause");
return0;
}
/<stdlib.h>/<stdio.h>

答案:當測試完代碼打架就知道了,**liujian = *Guizi2 = guizi1=888。

下節內容:思考下二級指針的用途

二級指針的用途:

1. 普通指針可以將變量通過參數"帶入"函數內部,但沒辦法將內部變量"帶出"函數。

神一般的操作,如何玩轉指針之二級指針

一級指針

二級指針說的是否清楚 (多選)
0人
0%
很清楚
0人
0%
清楚
0人
0%
模糊
0人
0%
不清楚
<button>投票/<button>

注意:

32 位系統中,int 整數佔 4 個字節,指針同樣佔 4 個字節

64 位系統中,int 整數佔 4 個字節,指針同樣佔 8 個字節


分享到:


相關文章: