變量&地址&指針

變量&地址&指針指針

每一個變量在運行時都擁有一個地址,這個地址表明變量在內存中的位置。Go 語言中使用&做符放在變量前面對變量進行「取地址」操做。code

ptr := &v    // v的類型爲T

其中 v 表明被取地址的變量,被取地址的 v 使用 ptr 變量進行接收,ptr 的類型就爲*T,稱作 T 的指針類型。*表明指針。內存

取地址操做符&和取值操做符*是一對互補操做符,&取出地址,*根據地址取出地址指向的值。變量

  • 變量、指針地址、指針變量、取地址、取值的相互關係和特性以下:
  • 對變量進行取地址(&)操做,能夠得到這個變量的指針變量。
  • 指針變量的值是指針地址。
  • 對指針變量進行取值(*)操做,能夠得到指針變量指向的原變量的值

總結1:變量、指針和地址三者的關係是:每一個變量都擁有地址,指針的值就是地址。總結

總結2:取地址操做符&和取值操做符*是一對互補操做符,&取出地址,*根據地址取出地址指向的值。語言

最後大大的結果就是:取址用&,取值用*co

var a = 1;
p = &a; //p接受 a的地址
func go (*p) { //傳遞a的地址

	p變量的值爲1.
}
相關文章
相關標籤/搜索