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 "~%")))