Go 中同时使用fmt.Println和println为什么输出顺序不固定
go 刘宇帅 4年前 阅读量: 1102
让我们执行如下代码:
package main
import "fmt"
func main() {
v := []int{1, 2, 3}
for i := range v {
println(i)
}
fmt.Println(v)
}
我们可能会得到如下结果(但每次都未必一样):
0
1
[1 2 3]
2
为什么呢?
fmt.Println把结果输出到标准错误(standard error)中,println把结果输出到标准输出(standard output),因为两个输出的目标不一样,所以顺序是不固定的。