【Go】指针

  1. 指针类型存储的值是一个地址,默认值是 nil。
  2. 不支持指针运算,不同类型的指针不能互相转化(可以借助unsafe.Pointer进行转换)。
func main() {
	// p 是指针变量,*int 是指针类型
	var p *int
    
    // p 刚定义时是一个空指针,值为 nil,因此直接赋值会报错(运行时错误)
    *p = 17

	n := 18

	// &是取地址符号,作用是将变量 n 所在内存地址赋值给指针变量 p
    // 此时:变量 n 的内存地址为 0xc0000aa058,存储的值是 18,
    // 变量 p 的内存地址为 0xc0000ce018, 其存储的值为:0xc0000aa058
	p = &n
}
posted @ 2022-06-02 18:45  weidadong  阅读(20)  评论(0)    收藏  举报