3

如何在haskell中打印报价?我认为是

putStrLn "\"" 

但它不是:(我知道这是一个简单的问题,但我在任何地方都找不到。

为了澄清,结果应该很简单:" 谢谢

4

1 回答 1

10

如果您只想打印单个双引号,可以使用putChar,如下所示:

putChar '"'

请记住,这不会附加换行符或其他类似内容。如果您想用换行符打印报价,您提供的代码应该是正确的。

putStrLn "\""

应该管用。反斜杠的原因是双引号用于结束字符串,所以我们需要告诉编译器特别对待这个特殊的双引号——我们用反斜杠来做。

反斜杠和字符的组合通常被称为“转义序列”——我们还有其他\n的,比如换行符、\t制表符和\\实际的反斜杠。putChar这当然意味着您可以通过将两个s 组合成来打印双引号后跟换行符

putChar '"' >> putChar '\n'

>>将两个打印操作链接在一起的操作员在哪里。但是,当您可以这样做时,这样做putStrLn "\""有点奇怪。

于 2013-10-28T09:34:53.157 回答