【发布时间】:2017-06-10 19:00:10
【问题描述】:
为什么这段代码不起作用?
xMal 0 _ = return ()
xMal n text =
do
text
xMal (n-1) text
main = xMal (putStrLn t <- getLine) (n <- readLn)
我希望能够得到一个数字和字符串作为输入。
【问题讨论】:
-
对于初学者来说,您没有使用正确的语法。仅供参考,将来最好包含您认为您的函数应该是的类型签名,正确格式化您的代码,并包含编译器错误。
-
你认为
putStrLn t <- getLine应该做什么?将n <- readLn作为参数传递给函数是什么意思? -
...并确保清楚预期的行为是什么 :)
-
<-不是运算符;它是do表达式语法的一部分。