租用问题

质量为本、客户为根、勇于拼搏、务实创新

< 返回租用问题列表

go语言数组指针如何引用,go 数组定义

发布时间:2023-10-25 17:31:16

go语言数组指针如何援用

在Go语言中,数组是值类型,当数组作为参数传递给函数时,会进行值拷贝。如果需要在函数中修改数组内容并保持修改后的结果,可使用数组指针来实现。

要援用一个数组指针,可使用&符号获得数组的地址。下面是一个示例:

package main

import "fmt"

func modifyArray(arr *[3]int) {
    (*arr)[0] = 10
    (*arr)[1] = 20
    (*arr)[2] = 30
}

func main() {
    arr := [3]int{1, 2, 3}
    fmt.Println("Before:", arr)

    modifyArray(&arr)
    fmt.Println("After:", arr)
}

在上面的代码中,modifyArray函数接收一个指向数组的指针,并通过解援用指针来修改数组的值。在main函数中,使用&arr将数组的地址传递给modifyArray函数。

输出结果为:

Before: [1 2 3]
After: [10 20 30]

可以看到,数组的值在modifyArray函数中被修改了,并且这个修改在main函数中是可见的。

需要注意的是,在Go语言中,数组的长度也是数组类型的一部份,因此数组的指针类型为*[长度]类型。在函数参数中,也需要指定数组的长度。