putStrLn "Enter the Artist Name"
art <- getLine
putStrLn "Enter the Number of CD's"
num <- getLine
let test= buyItem currentStockBase art num
printListIO (showcurrentList test)
我必须为buyItem传递的值是
buyItem currentStockBase "Akon" 20
但我想将“Akon”发送给艺术品,而我希望发送数字
它给了我这个错误
ERROR file:.\Project2.hs:126 - Type error in application
*** Expression : buyItem currentStockBase art num
*** Term : num
*** Type : [Char]
*** Does not match : Int
请帮帮我
答案 0 :(得分:5)
num
是String
。 buyItem
期待Int
。您需要将String转换为Int,例如使用read
。
buyItem currentStockBase art (read num)
修改:String
表示[Char]
---希望这意味着错误消息现在对您更有意义。
答案 1 :(得分:2)
是因为num是一个字符串吗?尝试使用read
解析它:
let test= buyItem currentStockBase art (read num)