【发布时间】:2019-03-31 00:55:43
【问题描述】:
当我执行这个时:
buf := new(bytes.Buffer)
buf.WriteString("Hello world")
fmt.Println(buf)
它打印Hello World。
但是如果我执行这个:
var buf bytes.Buffer
buf.WriteString("Hello world")
fmt.Println(buf)
打印:{[72 101 108 108 111 32 119 111 114 108 100] 0 [72 101 108 108 111 32 119 111 114 108 100 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0] 0}
我知道这是byte.Buffer结构的内容,但为什么打印成不同的格式?
【问题讨论】:
-
它当前打印您在 Buffer 切片中给出的 ASCII 字符的十进制表示。请参阅
String()的bytes.Buffer。