【问题标题】:Clojure print functionClojure 打印功能
【发布时间】:2014-11-29 19:48:43
【问题描述】:

完整的 Clojure 新手在这里,所以我可能遗漏了有关 clojure 工作方式的一些基本知识,但我不了解 Clojure 评估函数的方式。

(defn get-output [] 
  (print "Enter: Width <RTN> Height <RTN> Price <RTN> Shape <RTN>")
  (print (calculate (read-string (read-line))))

我习惯了像 Ruby 或 C 这样的语言,其中第一个打印函数将被评估,将字符串打印到终端。然后将评估第二个打印函数,提示用户输入。

然而,实际发生的是终端首先提示用户输入,然后打印“输入:宽度高度价格形状”。最后程序从calculate输出返回值。

为什么这些打印语句没有按我的预期执行?

【问题讨论】:

    标签: clojure


    【解决方案1】:

    语句按您期望的顺序执行。问题是print 没有刷新输出缓冲区。您可以在第一个print 语句之后调用(flush),或者您也可以调用println

    【讨论】:

      猜你喜欢
      • 2018-07-10
      • 2022-01-01
      • 2013-09-02
      • 1970-01-01
      • 1970-01-01
      • 2020-01-21
      • 2019-01-18
      • 2015-09-22
      • 2012-09-06
      相关资源
      最近更新 更多