我需要使用 Common Lisp 创建一个包含两对的对。
输出需要是:
((1 . 2) . (3 . 4))
文献指出 (cons (cons 1 2) (cons 3 4))
应该输出我需要的东西但是当我运行它时我得到:
((1 . 2) 3 . 4)
感谢任何帮助。
最佳答案
在 Lisp 中
((1 . 2) . (3 . 4))
和
((1 . 2) 3 . 4)
完全一样。您可以通过评估 '((1 . 2) . (3 . 4))
来检查。
如果你考虑一下,3
是 cdr 的车,所以它是不正确列表的第二个元素,所以 (1 . 2)
对是第一个元素,3
作为第二个元素,用 4
而不是 NIL 来终止它。
它们只是查看相同 cons 单元配置的两种方式:
关于common-lisp - 使用 Common Lisp 创建一对对,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27629679/