指针示例
This commit is contained in:
parent
f091e9c127
commit
263006b09c
42
bilibili/aceid/pointor/test2/test.go
Normal file
42
bilibili/aceid/pointor/test2/test.go
Normal file
@ -0,0 +1,42 @@
|
||||
package main
|
||||
|
||||
import "fmt"
|
||||
|
||||
func swap(a int, b int) (int, int) {
|
||||
var tmp int
|
||||
tmp = a
|
||||
a = b
|
||||
b = tmp
|
||||
return a, b
|
||||
}
|
||||
|
||||
func swap2(pa *int, pb *int) {
|
||||
var temp int
|
||||
temp = *pa // temp = main::a
|
||||
*pa = *pb // main::a = main::b
|
||||
*pb = temp // main::b = temp
|
||||
}
|
||||
|
||||
func main() {
|
||||
var a int = 10
|
||||
var b int = 20
|
||||
|
||||
fmt.Println("a = ", a, " b = ", b)
|
||||
|
||||
swap2(&a, &b)
|
||||
|
||||
// a, b = swap(a, b)
|
||||
|
||||
fmt.Println("a = ", a, " b = ", b)
|
||||
|
||||
var p *int
|
||||
p = &a
|
||||
fmt.Println(&a)
|
||||
fmt.Println(p)
|
||||
|
||||
var pp **int
|
||||
pp = &p
|
||||
fmt.Println(&p)
|
||||
fmt.Println(pp)
|
||||
fmt.Println(&pp)
|
||||
}
|
Loading…
Reference in New Issue
Block a user