为什么[9]在Erlang中以"\ t"的形式返回?

Bre*_*ski 4 erlang

我正在处理一些Erlang教程,并在我进入时注意到

[8].
Run Code Online (Sandbox Code Playgroud)

VM返回"\ b"或如果我输入

[9].
Run Code Online (Sandbox Code Playgroud)

VM返回"\ t"

我很困惑为什么会这样.其他数字作为该数字的列表返回:

[3].
Run Code Online (Sandbox Code Playgroud)

返回[3]

[4].
Run Code Online (Sandbox Code Playgroud)

以[4]等返回

我想问题是为什么erlang VM以这种方式返回它?也许是列表[65]和列表的解释?"一个".
另一个相关项目也令人困惑:类型转换,将列表转换为整数完成如下:

list_to_integer("3").
Run Code Online (Sandbox Code Playgroud)

list_to_integer([3]).
Run Code Online (Sandbox Code Playgroud)

哪个返回错误

小智 8

在Erlang中没有真正的字符串.String是整数列表.因此,如果您给出一个包含表示字符的整数的列表,那么它们将显示为字符串.

1> [72, 101, 108, 108, 111].
"Hello"
Run Code Online (Sandbox Code Playgroud)

如果指定的列表至少包含不具有字符副本的元素,则列表将如此显示.

2> [72, 101, 108, 108, 111, 1].
[72,101,108,108,111,1]
Run Code Online (Sandbox Code Playgroud)