Go 语言里面的指针: array *[ ]int 和 array[ ]*int 的区别是啥
指针数组是数组里面全都是指针类型
https://learnku.com/docs/qianxi-golang/section-4-pointer-array-pointer-and-pointer-array/6347
我当初是看这个理解的
“`go
package main
import “fmt”
func main() {
array := []int{1, 2, 3, 4, 5}
fmt.Println(“array[0]=”, array[0])
changeArray(&array)
fmt.Println(“array[0]=”, array[0])
}
// 函数的指针参数
func changeArray(array *[]int) {
(*array)[0] = 123456789
}
// 数组指针:指的是一个指针,只不过这个指针指向了一个数组
// 指针数组:指的是一个数组,这个数组里面装满了指针。
func arrayPtr() {
a := []int{1, 2, 3}
len := len(a)
var ptr [3]*int
for i := 0; i < len; i++ {
ptr[i] = &a[i]
}
for i := 0; i < len; i++ {
fmt.Printf(“%pn”, ptr[i])
}
}
“`
建议用小例子来检查一下,我也是初学(另外求上海 Go 可转正实习)