那么,有缺陷的功能如下:
(defun make-matrix (n)
(make-array (n n) :initial-element 0))
Run Code Online (Sandbox Code Playgroud)
我想使用像(make-matrix 8)
更换更长时间的函数(make-array '(8 8) :initial-element 0)
,但CLISP说有一个错误(n n)
,因为n
它不是一个定义的函数.我该如何写这个make-matrix
函数?
我正在尝试创建一个接收大量行和列的函数,并从中生成一个数组.这就是我做的
(defun create-table (lines columns)
(make-array '(lines columns)))
Run Code Online (Sandbox Code Playgroud)
我认为这就是你制作多维数组的方法.但是当我调用函数时create-table
,例如(create-table 2 2)
给出了这个错误
MAKE-ARRAY:维度LINES不是`(INTEGER 0(,ARRAY-DIMENSION-LIMIT))
我不明白,怎么可能不是整数?我应该演员吗?