golang指针巩固

func main() {
    var a int = 10
    fmt.Println("a :", &a)
    var p *int = &a
    fmt.Println("p1 :", p)
    fmt.Println("p2 :", &p)
    fmt.Println("p3 :", *p)
    fmt.Println("p4 :", *(&a))
}

p1是指针变量p所存储的a的地址
p2是指针变量p的地址
p3是间接引用即通过指针变量存储的a的地址取到a的值
如下图:


空指针

var a int (无法通过a取值会报错)

野指针

用无效的出事化方式
例如:
var p *int = 0

var p *int = dx00cx

posted @ 2020-07-23 11:22  胖墩墩的博客  阅读(9)  评论(0)    收藏  举报  来源