如果看完閣下滿意的話,能否一鍵三連呢,我的動力就是大家的支持與肯定,沖!?
?
二級指針
?
我們先看概念以及作用:用來存放一級指針的地址的指針
先看例子,我們逐一分析
我們先分析上面那個“1”?標注那里:
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?*作為標志代表p是指針變量,int表示后面那個“&a”中的a是
?int類型
我們在分析標注的“2”那里:
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?從左到右第二個*代表pc是指針變量,“int*”需要當做一個整體,表示后面那個“&p”的類型
?
這樣說你們理解了嗎!上面的那個pc就是二級指針?
?
我們再看一個例子:
我們直接看指針打印方式:
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 從左到右第一個*表示對*pc解引用操作得到*p,然后第二個*表示再對p進行解引用操作得到b(賦值操作也可以這么理解)
簡記:就是套娃操作,一層一層疊起來的
?
指針數組
?
概念:指針數組是數組,表示存放指針類型的數組
?
我們參考第一個例子:
?
解析:
同理數組名前面的*是作為標志代表Arr是指針數組;
Arr【i】得到是每一個元素的地址,我們再進行解引用操作,就得到了元素;
?
我們再看一個例子,簡單了解一下指針數組的作用:
?
解析:我們先看上面那幅圖:p【i】?【j】中的i表示先訪問的是指針數組中的每個元素地址,j表示再訪問每個指針數組中的每個元素,就是通過指針數組的每個地址找到對應數組的每個元素
或者第二種打印方式(個人認為第二種方式比較好理解,但是也要了解第一種打印方式)
?
?解析:我們直接看與第二幅圖不同的打印那個地方。(p【i】+j)?表示先通過i找到第i個指針數組元素,然后移動j位,理解為移動地址就好了。得到地址后我們再進行解引用操作,就得到了元素
?
初階的指針(后面還有進階的,我也會慢慢更的哦!)就更完了,還有一個相關的結構體 ,稍等一天啊!