在打印之前Lisp奇怪的新行

时间:2017-05-17 15:43:57

标签: linux lisp common-lisp

当我尝试使用“clisp hello.lisp”(其中“hello.lisp”是我的程序的名称)从终端打印一些文本时,在右输出之前添加新行(所以在“hello world”之前) 。为什么会发生这种情况?如何更改?在其他语言中,如Python或Ruby,在同一代码中没有换行符。

(print "hello world")

2 个答案:

答案 0 :(得分:3)

  

为什么会发生

这是因为指定了函数PRINT来执行此操作。

  

我该如何更改?

你不能。只需使用其他功能进行打印:WRITE-STRING,WRITE-LINE,WRITE或PRIN1。

WRITE-LINE打印字符串,然后打印换行符。

  

在Python或Ruby等其他语言中,同一代码中没有换行符。

由于这些是不同的编程语言,因此相同的代码将无法在Python和Ruby中运行。

答案 1 :(得分:2)

使用prin1而不是print:

(prin1 "Hello world")
  

还有一个名为prin1的函数。除了它之外,这与打印相同   没有添加换行符。