arrays - Lisp 格式过程应用于数组

标签 arrays format common-lisp

我需要一些有关 format 函数和数组的帮助。

我的目标是将 N·N 个整数值的二维数组打印为每行 N 个整数。例如:

#2A((1 2 3)
    (4 5 6)
    (7 8 9))

应打印为

1 2 3 
4 5 6
7 8 9

我找不到任何有关如何使用 format 打印数组的文档。它实际上可以完成吗,或者我应该将数组转换为列表并使用类似的东西:

(format t "~{~%~{~A~^ ~}~}"  list)

最佳答案

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

关于arrays - Lisp 格式过程应用于数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4360047/

相关文章:

c++ - 了解具有动态内存分配的二维数组

image - 我如何知道 TIFF 图像是否采用 CCITT T.6(第 4 组)格式?

python - 为稀疏矩阵交换优化的文件格式

lisp - Lisp 中的序列

lisp - 字符打印两次以上(Common Lisp)

php - Array Merge PHP不断创建子/维数组

JavaScript 交通灯

arrays - 在 Swift 中对 UIImage 类型数组进行排序

arrays - 如何避免最后打印nil?

common-lisp - 如何摆脱普通 lisp 中的 funcall