【发布时间】:2017-02-28 05:08:40
【问题描述】:
我是 Haskell 的新手,我不知道如何在代码执行期间接受用户的输入。假设我输入此代码:
import System.IO
main = do
putStrLn "Hi, what's your name?"
name <- getLine
putStrLn ("Hi " ++ name)
好吧,我希望文本 "Hi, what's your name?" 出现之前我输入我的名字,然后打印第二行 "Hi, name"之后用户输入他们的名字.
但是,就像现在一样,在我输入我的名字之后, 之前没有任何文本显示。这使得问题变得多余,因为直到用户回答问题后才会将问题呈现给用户。
我知道这可能是一个愚蠢的问题,但我已经在谷歌上搜索了很长时间,但没有成功。感谢您的宝贵时间。
【问题讨论】:
-
您的代码非常适合我。也许你用错了。你怎么称呼它?
-
你确定你使用的是
putStrLn,而不是putStr吗?听起来像是缓冲问题。
标签: haskell