为什么下面的代码返回 nil 值而不是 1?
(defun test (list)
(car(list)))
(test '( 1 2 3))
它返回nil
,因为您询问(list)
的car
是什么,这是list
函数的函数调用。由于您向list
函数传递时没有参数,因此它返回nil
,因为没有car
也没有cdr
(它是一个空列表(。以下将产生预期的效果:
(defun test (list)
(car list))
(test '(1 2 3)) ;; now returns 1