2

我正在尝试在缓冲区中插入 lisp 列表的长度,如下所示:

(insert "The list has " (length my-list) " elements")

然而,这会产生一个奇怪的不可打印字符而不是元素的数量,所以结果类似于

The list has ^A elements

我必须转换返回值吗?该列表不为空。

4

1 回答 1

4

你需要这个format功能。

(insert (format "The list has %d elements" (length my-list)))

或者,在这种情况下,您可以将整数转换为字符串:

(insert "The list has " (number-to-string (length my-list)) " elements")

Control-A 是 ASCII 代码 1。显然,当您尝试时,您的列表只有一个元素。

于 2012-10-10T08:31:28.943 回答