什麼是指標?
可以想像是一個城市,每個變數就像這城市中的房子。而 指標 就好比是這個房子的門牌號碼,它告訴我們這個變數在哪個房子(也就是在記憶體中的哪個位置)。而指標本身也是一個變數,它存儲著這個門牌號碼。
目前學的都是透過變數名稱來存取變數內容,而「指標」則是存放變數在記憶體中的位置。
為什麼要用指標:
可以讓傳遞參數資料時更有效率、建立複雜的資料結構、在Go語言中new 函式可以動態分配記憶體,而它返回的就是一個指向這塊記憶體的指標。
記憶體位置:
取得變數的記憶體位置,只要在變數前面加上「&」算符就好囉!
指標運算
*取值運算符 : 放在指標前面,取得指標指向的值。
&取址運算符 :放在變數前面,取得變數的地址。
指標的 nil 值
如果一個指標沒有指向任何有效的記憶體,它的值就是 nil。
指標變數的宣告:
var 變數 *資料型態
取得既有變數的指標:
變數1:=&變數2
由指標取值:
值= *指標變數
可以得知該指標指向的資料值是什麼。
下一篇預告
實際練習指標!