字符字面值

字符字面值用单引号 '' 括起来,并且可以包含与字符串相同的转义序列 - 有一个例外:平台依赖的 newline (\p) 是不允许的,因为它可能比一个字符宽(通常是CR / LF对)。 以下是对字符字面值有效的 转义序列 :

转义序列含义
\r, \c回车
\n, \l换行
\f换页
\t制表符
\v垂直制表符
\反斜杠
\"双引号
\'单引号
\ '0'..'9'+十进制值的字符d; 后跟的所有十进制数字都用于该字符
\a告警
\b退格
\e退出 [ESC]
\x HH十六进制字符HH; 只允许两位数字

字符不是Unicode字符,而是单个字节。

这样做的原因是效率:对于绝大多数用例,由于UTF-8是专门为此设计的,所得到的程序仍然可以正确处理UTF-8。 另一个原因是Nim因此可以依靠这个特性像其它算法一样有效地支持 array[char, int]set[char]Rune 类型用于Unicode字符,它可以表示任何Unicode字符。 Runeunicode module 声明。