Golang字符串结束字符

Ric*_*rdo 0 go

我是Golang的新手,所以我正在玩一些算法,我有一点问题.在java中为char数组插入一个结束字符串我可以这样做:

String str = "Mr John Smith    ";
char[] arr = str.toCharArray();
arr[12] = '\0';
Run Code Online (Sandbox Code Playgroud)

但在Golang我这样做:

str := []byte("Mr John Smith    ")
str[12] = '\0'
Run Code Online (Sandbox Code Playgroud)

但是这段代码不起作用

Jim*_*imB 5

这不是具有0值的符文文字的有效语法.您可以使用十六进制转义序列

str[12] = '\x00'
Run Code Online (Sandbox Code Playgroud)

如果你真的需要一个八进制值,它需要3位数

str[12] = '\000'
Run Code Online (Sandbox Code Playgroud)

或者只是指定一个文字 0

str[12] = 0
Run Code Online (Sandbox Code Playgroud)

您可以在规范中看到有效的符文文字转义序列:https://golang.org/ref/spec#Rune_literals