小编Sal*_*ter的帖子

Golang append()受fmt.Println()影响的奇怪行为

我注意到Golang的append()有一些奇怪的行为.我理解切片容量如何影响新的底层数组是否被分配的基本概念,但是为什么我是否使用了fmt.Println()追加已发生影响追加结果的AFTER?

package main

import "fmt"

func main() {
    a := []byte("AAA")

    b := append(a, []byte("BBB")...)
    fmt.Println(" a: ", string(a), " b: ", string(b))

    c := append(a, []byte("CCC")...)
    fmt.Println(" a: ", string(a), " b: ", string(b), " c: ", string(c))

    fmt.Println(&b) //try commenting this out and in and running the program
}
Run Code Online (Sandbox Code Playgroud)

链接到运行代码:https://play.golang.org/p/jJ-5ZxTBIn

go

5
推荐指数
1
解决办法
212
查看次数

标签 统计

go ×1