emptyAndOther
:: IO (Int, Int)
emptyAndOther =
do
c <- getChar
if c == '\ESC'
then return (x, y)
else if isSpace c
then (x+1) y
else x (y+1)
where
x = 0
y = 0
此代码有什么问题? 我想统计每一个空行和每个字符,然后按ESC按钮,返回结果。Haskell计数示例
似乎没有明白,什么是错的
是的,我必须使用这个签名
尝试在任何文本编辑器中按ESC,看看什么字符出来...... – delnan 2011-06-14 18:44:51
没什么,以及如果c =='\ ESC'应该是正确的,但其余的代码? – SummerBreak 2011-06-14 18:54:56
正确观察,错误结论。没有字符出现,因为ESC根本不生成任何字符,所以当然它没有生成字符的转义序列。是否有鼠标点击的转义序列?命令行应用程序永远不会看到ESC等等(至少它们不会默认)。 – delnan 2011-06-14 18:58:28