所以我偶然发现了一个看起来很奇怪的小问题。我想打印控制字符,它应该打印那个奇怪的小框,表明我正在尝试打印不可打印的字符。
当我尝试时:
print "\^C";
它工作正常。但是当我这样做时:
print (Char.toString(#"\^C"));
它从字面上打印“\^C”。这对我来说没有任何意义,他们不应该打印同样的东西吗? Char.toString 不会将字符转换为包含一个字符的字符串,而是将其转换为包含 3 个字符的字符串,'\'、'^' 和 'C'。
有人可以向我解释一下这种行为吗?谢谢。
最佳答案
这是因为Char.toString
返回字符的可打印表示。
如果您希望将char
直接转换为string
,您需要使用str
。功能。
关于printing - 标准ML打印控制字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23114650/