这个:
label := string([]byte{97, 98, 99, 0, 0, 0, 0}) fmt.Printf("%sn", label)
这样做( ^@
是空字节):
go run test.go abc^@^@^@
使用strings
包。
package main import ( "fmt" "strings" ) func main() { label := string([]byte{97, 98, 99, 0, 0, 0, 0}) fmt.Println(strings.TrimSpace(label)) }
请注意,第一个答案仅适用于在null终止符后仅运行零的字符串; 但是,正确的C风格的以null结尾的字符串在第一个