共计 539 个字符,预计需要花费 2 分钟才能阅读完成。
在 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 语言中,数组的长度也是数组类型的一部分,因此数组的指针类型为 *[长度] 类型
。在函数参数中,也需要指定数组的长度。
丸趣 TV 网 – 提供最优质的资源集合!
正文完