Arrays 应用于数组的Lisp格式过程
我需要一些关于Arrays 应用于数组的Lisp格式过程,arrays,format,common-lisp,Arrays,Format,Common Lisp,我需要一些关于格式函数和数组的帮助 我的目标是将N·N整数值的二维数组打印为每行N个整数。例如: #2A((1 2 3) (4 5 6) (7 8 9)) 应打印为 1 2 3 4 5 6 7 8 9 我找不到任何关于如何使用格式打印数组的文档。实际上可以这样做吗?或者我应该将数组转换为列表并使用以下内容: (format t "~{~%~{~A~^ ~}~}" list) 如果我没有弄错的话,format无法直接进入数组。您可以编写自己的函数,供tilde slash
格式
函数和数组的帮助
我的目标是将N·N整数值的二维数组打印为每行N个整数。例如:
#2A((1 2 3)
(4 5 6)
(7 8 9))
应打印为
1 2 3
4 5 6
7 8 9
我找不到任何关于如何使用格式
打印数组的文档。实际上可以这样做吗?或者我应该将数组转换为列表并使用以下内容:
(format t "~{~%~{~A~^ ~}~}" list)
如果我没有弄错的话,
format
无法直接进入数组。您可以编写自己的函数,供tilde slash使用(~/function/
,请参见),也可以将数组强制为列表,并使用您建议的指令或。如果您想定义自己的,CLHS有pprint tabular
的示例代码,您可以为数组修改这些代码
(defun show-board (board)
(loop for i below (car (array-dimensions board)) do
(loop for j below (cadr (array-dimensions board)) do
(let ((cell (aref board i j)))
(format t "~a " cell)))
(format t "~%")))