go语言的指针问题

在学习go语言的指针过程中,产生疑惑

使用取地址符,打印内存地址

但是为什么红框中的地址和函数外的地址不一样呢?

我本来以为都是打印078的地址,但是在函数内却打印了038的地址

QQ图片20191025214022.png

回答:

`
函数外面 声明变量i.那么&i 你打印的是该变量的内存地址。而你的方法zeroptr 接受的是*int.那么 其实 ip等价于&i。所以你打印ip 就是 i的内存地址。再你在函数内部进行&ip操作。相当于对&&i 的意思吧。其实也就是你打印了指针的指针地址。。最后就是 **int
`

以上是 go语言的指针问题 的全部内容, 来源链接: utcz.com/p/182916.html

回到顶部