在函数中使用append,函数结束返回后,切片的长度不会增加,这是什么原因呢,是我写的、理解有问题,还是说官网的设定就是如此
//我的代码,版本1.20
func sliceTest(arr []byte){
arr[0] = '1'
arr[1] = '2'
arr = append(arr,'0')
}
func main(){
var testStr []byte = []byte{'a','b','c'}
fmt.Printf("Address:%p\n",&testStr)
fmt.Println(testStr,"len:",len(testStr),"cap:",cap(testStr))
sliceTest(testStr)
fmt.Println(testStr,"len:",len(testStr),"cap:",cap(testStr))
fmt.Printf("Address:%p\n",&testStr)
}
我的运行结果
有疑问加站长微信联系(非本文作者)