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