问题描述
我想在变量 t 中存储一个字符 '\'。
val x = #"q";
此行导致变量 x 中的字符“q”。
同样,我试过 -
val t = #"\\";
但这不起作用,而是将这一行之后的所有代码都变成了'orange'(意思是未闭合的字符串原因的一部分)。
根据我的理解,它将 \" 转换为 " 的字符,因此引号未关闭。
我在 VSCode 编辑器中使用 SML 扩展,尽管当我使用在线 SML IDE 时不会出现同样的问题。有人可以解释这是否是 VSCode 扩展的问题以及解决此问题的方法是什么。
解决方法
val t = #"\\";
是完全有效的 SML。问题在于 VSCode 的 SML 扩展。在这种特殊情况下最简单的解决方法是使用
val t = chr(92);