发现了go的一个bug: fmt.scanf("%s", &str)不能接受中文,只能接受ascii码.见下列代码:
```go
package main
import (
"fmt"
)
func main() {
var (
a int
f float32
str string
)
fmt.Println("准备录入数据: ")
fmt.Scanf("%d,%f,%s", &a, &f, &str)
fmt.Println("输出录入结果: ")
fmt.Println(a, f, str)
}
```
如果输入 10,34.12,string
会正常输出10,34.12, string
但如果输入10,34.12,str中国
则只能输出10,34.12,str
也就是说: fmt.Scanf("%s",str)是不能直接输入utf-8 string的.
有疑问加站长微信联系(非本文作者)