package main
import "fmt"
func GetPoint() {
// 定义一个变量
var count int = 20
// 定义一个指针 *type type为指向的类型,也就是指针的类型。
var countPoint *int
var countPoint1 *int
// & 为取地址符号
countPoint = &count
// ↓↓↓ Go语言中的指针是不支持指针运算的
// countPoint++
fmt.Printf("count 变量的地址:%x \n", &count)
fmt.Printf("countPoint 变量存储的地址:%x \n", countPoint)
// *号可以申明指针,但也是一种取值运算符
fmt.Printf("countPoint 指针指向地址的值:%d \n", *countPoint)
// 未赋值的指针都是nil
fmt.Println("countPoint 指针指向地址的值", countPoint1)
}
func main() {
GetPoint()
}
// 输出
MacintoshdeMacBook-Pro-139:point elasticnotes$ go run point.go
count 变量的地址:c000136008
countPoint 变量存储的地址:c000136008
countPoint 指针指向地址的值:20
countPoint 指针指向地址的值 <nil>