- GO取值和取指针的操作
*
是取值,即获取指针指向的值;&
取指针,即获取变量的地址package main import "fmt" func main() { // 取值 start var a int = 666 var b int = a // a是值传递,b取到的是a的值 fmt.Println(b) // 输出:666 // 取值 end // a的类型 start fmt.Printf("a的类型为:: %T\n", a) // a的类型为:: int // a的类型 end // 取指针 start var c *int = &a // c取到的是a的地址,c是一个指针,指向a的地址 fmt.Println(c) // 输出:0xc00000a0b8 // 取指针 end // 指针类型 start fmt.Printf("c的指针类型为:: %T\n", c) // c的指针类型为:: *int // 指针类型 end // 通过指针取值 start fmt.Println(*c) // 输出:666 // 通过指针取值 end // 修改指针指向的值 start *c = 789 fmt.Println(*c) // 输出:789 // 修改指针指向的值 end // 指针作为参数传递并参与运算 sum1(c) } func sum1(params *int) { fmt.Println(*params) // 输出:789 *params = *params + 1 fmt.Println(*params) // 输出:790 }
上一篇
Windows常用命令
2024-05-22
下一篇
JS中的groupBy
2024-04-26