新人求教个lisp问题
lisp吧
全部回复
仅看楼主
level 1
华音 楼主
(defvar a '(1 2 3))
(defvar b '(4 5 6))
(setf (car a) b)
(setf (car b) a)
这个是错误的,我知道,就是怎么能实现类似这样的环形结构?只能用结构体吗?
2015年01月26日 07点01分 1
level 7
在<<ansi common lisp>>中有关于这个详述,你是不是看的这个?实现环形结构对于列表来说就是A表的NIL为B表,B表的NIL为A表,或者A表的元素X为B表,B表的元素为A表,或者......很多啊。
2015年01月27日 10点01分 2
多谢了,那我找找去,还记得是哪一章吗?
2015年01月27日 10点01分
回复
ʫ������
:额,其实我说的这个并不对,只是随便说说的。。。。。第12.7节。
2015年01月27日 10点01分
@TaTaMaD 嗯,我看下书上就知道了,还是要多谢你啦
2015年01月27日 11点01分
回复
ʫ������
:小事儿而已,何足挂齿,哈哈。我也是初学者。[酷]
2015年01月27日 12点01分
level 1
华音 楼主
知道了,要开启*print-circle*就可以了
(setf *print-circle* t)
2015年01月28日 01点01分 3
赋值本身没有错误,是返回结果值的时候无限循环出错的,用progn返回nil的话赋值可以正常进行
2015年01月28日 01点01分
哦,涨姿势了~~~哈哈,谢谢。
2015年01月28日 10点01分
1