gpt4 book ai didi

haskell I/O,putStrLn 应用于两个参数

转载 作者:行者123 更新时间:2023-12-04 23:03:48 26 4
gpt4 key购买 nike

这个问题在这里已经有了答案:





Why shouldn't I mix tabs and spaces?

(1 个回答)


5年前关闭。




当我尝试编译下面的列表时

import System.Environment(getArgs)
import System.Exit
import Control.Monad(when)
main = do
args <- getArgs
when (length args /= 2) $ do
putStrLn "Syntax: passwd-al filename uid"
existFailure

编译器提示:函数“putStrLn”应用于两个参数。
但显然它只需要一个字符串,而existFailure 只是System.Exit 的另一个IO 操作。

如何解决这个问题?

最佳答案

putStrLn 没有出现这样的错误- 在您发布的代码中很好(注意间距可能不同,所以不会重现制表符,而是仅通过空格显示缩进,这对 Haskell 很重要)。

但是,您有 existFailure ,我认为这真的很酷,但您可能想使用函数 exitFailure .注意exist之间的区别和 exit .

关于haskell I/O,putStrLn 应用于两个参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17080004/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com