go语言基础之数组做函数参数是值拷贝

1、数组做函数参数是值拷贝

示例:

package main //必须有个main包

import "fmt"

//数组做函数参数,它是值传递
//实参数组的每个元素给形参数组拷贝一份
//形参的数组是实参数组的复制品
func modify(a [5]int) {
	a[0] = 666
	fmt.Println("modify a = ", a)
}

func main() {
	a := [5]int{1, 2, 3, 4, 5} //初始化

	modify(a) //数组传递过去
	fmt.Println("main: a = ", a)
}

执行结果:

modify a =  [666 2 3 4 5]
main: a =  [1 2 3 4 5]

  

原文地址:https://www.cnblogs.com/nulige/p/10239162.html