如果你在一个字符串中间设置一个charachter到'\0'
,len
函数不会更新。这是我们应该做的事吗?正在切片推荐的方式吗?
答案 0 :(得分:3)
通常,您不应将Nim字符串视为null终止。即使它们是,但这只是一个允许无缝C互操作的实现细节。
Nim字符串也是编码不可知的,这意味着'\0'
可以是字符串中的有效字节。但惯例是utf8。
要更改字符串的长度,请使用setLen
proc。
var s = "123456"
s.setLen(3)
assert(s == "123")