package main
import(
"fmt"
)
func main(){
var num int = 1
//& 获取当前变量的存储地址
fmt.Printf("num的地址=%v\n",&num)
//下面的 var ptr *int = &num
//1. ptr 是一个指针变量
//2. ptr 的类型 *int 声明一个指针
//3. ptr 本身的值&num
var ptr *int = &num
fmt.Printf("ptr 的地址=%v\n",ptr)
fmt.Printf("ptr 指向的值=%v\n",*ptr)
//改变num的值
var ptr1 *int
ptr1 = &num
*ptr1 = 10
fmt.Println("num = ",num)
}
执行原理
num值为 1时 1的内存地址为0xc042010098
在声明一个新指针 ptr 指向 num的值时 那么ptr也拥有操作全 然后再给地址里面的值进行更改