EVAL:未定义函数 X
EVAL: undefined function X
我在尝试调用必须 return 的函数时不断收到一些随机错误
二叉树中节点的级别。
这是我的方法
(defun nodeLevel(x index l)
(cond
((null l) nil)
((equal (car l) x) index)
((equal (cadr l) 1) (nodeLevel ( x (+ index 1) (cddr l))))
((equal (cadr l) 2) (nodeLevel ( x (+ index 1) (cddr l))))
(t nodeLevel(x (+ index 1) (cddddr l)))
)
)
我是这样称呼它的
(nodeLevel 'D '0 '(A 2 B 0 C 2 D 0 E 0) )
你有多余的括号。当你调用一个函数时,整个调用都在括号中,但参数没有自己的集合。你写了
(nodeLevel (x (+ index 1) (cddr l)))
你的意思可能是
(nodeLevel x (+ index 1) (cddr l))
我在尝试调用必须 return 的函数时不断收到一些随机错误 二叉树中节点的级别。
这是我的方法
(defun nodeLevel(x index l)
(cond
((null l) nil)
((equal (car l) x) index)
((equal (cadr l) 1) (nodeLevel ( x (+ index 1) (cddr l))))
((equal (cadr l) 2) (nodeLevel ( x (+ index 1) (cddr l))))
(t nodeLevel(x (+ index 1) (cddddr l)))
)
)
我是这样称呼它的
(nodeLevel 'D '0 '(A 2 B 0 C 2 D 0 E 0) )
你有多余的括号。当你调用一个函数时,整个调用都在括号中,但参数没有自己的集合。你写了
(nodeLevel (x (+ index 1) (cddr l)))
你的意思可能是
(nodeLevel x (+ index 1) (cddr l))