切片指针跟指针切片的循环注意事项(重要)
package main
import "fmt"
func main() {
//var x,y,z = 1,2,3
var s []*int = []*int{new(int)}
for i:=range s {
fmt.Println(*s[i]) //s=nil会报错,空指针不可取值 = 0
}
var l *[]int
l=&[]int{1,2,3}
*l= append(*l, *l...)
for _,x:=range (*l) {
fmt.Println(x) // 被引用 1,2,3 1,2,3
}
}
//结果
0
1
2
3
1
2
3