为什么对于 s := "labex",fmt.Println(s[0]) 会打印 108,而 fmt.Printf("%c", s[0]) 会打印 l?
s := "labex"
fmt.Println(s[0])
108
fmt.Printf("%c", s[0])
l
索引零表示第 108 个字符,因为 Go 使用从 1 开始的索引。
无论传入什么值,%c 都总是打印 l。
%c
Println 会永久地将字符串的第一个字符转换为整数。
Println
字符串索引返回编码后的字节值,而 %c 会将这个数值代码显示为字符。