为什么在Haskell中,“Char”用“\”符号表示?这样设计?

时间:2016-02-22 04:37:37

标签: haskell char representation

Prelude> maxBound::(Bool,Int,Char)
(True,9223372036854775807,'\1114111')
Prelude> minBound::Char
'\NUL'

为什么它显示\ NUL,而不是'\ 1114111'这样的数字?

1 个答案:

答案 0 :(得分:3)

Haskell中的

Char表示Unicode符号。

第一个符号具有代码0,并在Unicode中定义为NULL。它也是ASCII字符集的一部分,每个人都将\NUL(以及\NULL)与0相关联。

最大可能符号的代码为11141110x10ffff),定义为Noncharacter。至少有两个名为Noncharacter的Unicode符号:第二个是0x10fffe