gpt4 book ai didi

haskell - 为什么 Haskell 给出这段代码的解析错误?

转载 作者:行者123 更新时间:2023-12-03 14:52:40 30 4
gpt4 key购买 nike

我正在尝试制作一个程序来读取用户给出的数字然后打印它。当我打印它时,数字必须是一个整数,但是这段代码给了我一个解析错误:

main = do
{
putStrLn "Please enter the number"
number <- getLine
putStrLn "The num is:" ++ show (read number:: Int)
}

最佳答案

如果您在 do 中使用括号声明,你必须使用分号。另外,最后一行应该是 putStrLn $ "The num is:" ++ show (read number :: Int)
所以你有两个选择:

main = do
{
putStrLn "Please enter the number";
number <- getLine;
putStrLn $ "The num is:" ++ show (read number:: Int)
}

或者:
main = do
putStrLn "Please enter the number"
number <- getLine
putStrLn $ "The num is:" ++ show (read number:: Int)

我见过的几乎所有代码都使用第二个版本,但它们都是有效的。请注意,在第二个版本中,空格变得很重要。

关于haskell - 为什么 Haskell 给出这段代码的解析错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8876225/

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