go语言数组指针怎么赋值

avatar
作者
筋斗云
阅读量:2

在Go语言中,可以通过以下两种方式来赋值数组指针:

  1. 使用 & 运算符获取数组的地址,然后将该地址赋值给指针变量。
package main  import "fmt"  func main() {     arr := [3]int{1, 2, 3}     var ptr *[3]int     ptr = &arr      fmt.Println(ptr)  // 打印指针变量的地址     fmt.Println(*ptr)  // 打印指针变量指向的数组的值 } 

输出结果:

&[1 2 3] [1 2 3] 
  1. 使用 new 函数创建一个指向数组的指针,并通过赋值操作为指针变量分配内存。
package main  import "fmt"  func main() {     ptr := new([3]int)     *ptr = [3]int{4, 5, 6}      fmt.Println(ptr)  // 打印指针变量的地址     fmt.Println(*ptr)  // 打印指针变量指向的数组的值 } 

输出结果:

&[4 5 6] [4 5 6] 

注意:使用 new 函数创建的指针变量是动态分配的内存,而不是静态数组的指针。因此,在使用 new 函数创建指针变量时,不需要使用 & 运算符获取数组的地址。

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!