go
2017-03-03 181 views 0 likes 
0

我是Golang的新手,所以我在玩一些算法,並且遇到了一些問題。 在java中的插入字符數組的端線,我可以這樣做:Golang字符串結束字符

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

但Golang我想是這樣的:

str := []byte("Mr John Smith ") 
str[12] = '\0' 

但這代碼沒有工作

+0

可能的副本吃了[有沒有辦法在Go中創建以null結尾的字符串?](http://stackoverflow.com/questions/38007361/is-there-anyway-to-create-null-terminated-string-in-go/38008565# 38008565) – icza

回答

5

這不是一個有0值的符文文字的有效語法。您可以使用十六進制轉義序列

str[12] = '\x00' 

如果你真的需要一個八進制值,它需要3個數字

str[12] = '\000' 

或者只是賦予文字0

str[12] = 0 

你可以看到在規範中有效的符文字義轉義序列:https://golang.org/ref/spec#Rune_literals

相關問題