Go語言 之變量內存與地址


package main

import (
    "fmt"
)

func main() {
    var a int = 10
    //每個變量都有兩層含義,變量的內存和變量的地址
    fmt.Printf("a = %d\n", a)  //變量的內存 10
    fmt.Printf("a = %v\n", &a) //變量的地址 0xc042060080

    //保存某個變量的地址,需要指針類型, *int保存int的地址, **int保存*int的地址
    //聲明(定義),定義只是特殊的聲明
    //定義一個變量p,類型為*int
    var p *int
    p = &a
    fmt.Printf("p = %v, &a = %v\n", p, &a)
    *p = 666 //*p操作的不是p的內存,是p指向的內存(其實就是a)
    fmt.Printf("*p = %v, a = %v\n", *p, a)
}

 


免責聲明!

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



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