我希望我的showStackHead函数采用堆栈打印头并返回休止符,这是我的代码--code
showStackHead xx
| xx == [] = return []
| otherwise = do putStrLn("result:" ++ (head xx))
return (tail xx)
Run Code Online (Sandbox Code Playgroud)
当我运行这段代码时,编译器告诉我第二次返回有一个解析错误,那么编写这个函数的正确方法是什么?
Don*_*art 15
将'return'缩进到与'putStrLn'相同的深度,如下所示:
showStackHead xs
| xs == [] = return []
| otherwise = do putStrLn ("result:" ++ (head xs))
return (tail xs)
Run Code Online (Sandbox Code Playgroud)