指针示例
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