Go中*和&區別


*和&的區別 :

  1. & 是取地址符號 , 即取得某個變量的地址 , 如 ; &a
  2. *是指針運算符 , 可以表示一個變量是指針類型 , 也可以表示一個指針變量所指向的存儲單元 , 也就是這個地址所存儲的值 .

 

package main

import(
    "fmt"
)


func modify(a *int) {   // "*" 表示定義一個變量是指針類型, 這個變量叫指針變量
    *a = 10             // "*" 表示獲取指針變量所指向的內存
}

func main() {
    a := 1
    var x *int    //定義指針變量
    x = &a        // &表示獲取變量的地址
    modify(x)
    fmt.Println(a)   // 10
}

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM