Next: Rearrangement, Previous: Setcar, Up: Modifying Lists [Contents][Index]
CDR¤ò½¤Àµ¤¹¤ë¤â¤Ã¤È¤âÄã¥ì¥Ù¥ë¤Î´ðËÜ´Ø¿ô¤Ïsetcdr
¤Ç¤¹¡£
¤³¤Î´Ø¿ô¤Ï¡¢cons¤Î¿·¤¿¤ÊCDR¤È¤·¤Æobject¤ò³ÊǼ¤·¡¢ °ÊÁ°¤ÎCDR¤òÃÖ¤´¹¤¨¤ë¡£ ¤¤¤¤¤«¤¨¤ì¤Ð¡¢cons¤ÎCDR¥¹¥í¥Ã¥È¤¬object¤ò»Ø¤¹¤è¤¦¤ËÊѹ¹¤¹¤ë¡£ ¤³¤Î´Ø¿ô¤ÏÃÍobject¤òÊÖ¤¹¡£
¥ê¥¹¥È¤ÎCDR¤òÊ̤Υꥹ¥È¤ÇÃÖ¤´¹¤¨¤ëÎã¤ò¼¨¤·¤Þ¤¹¡£ ¥ê¥¹¥È¤ÎºÇ½é¤ÎÍ×Áǰʳ°¤Ï¼è¤ê½ü¤«¤ì¡¢ Í×ÁǤÎÊ̤Υ·¡¼¥±¥ó¥¹¤Ë¤Ê¤ê¤Þ¤¹¡£ ºÇ½é¤ÎÍ×ÁǤÏÊѹ¹¤µ¤ì¤Þ¤»¤ó¡£ ¤È¤¤¤¦¤Î¤Ï¡¢¤½¤ì¤Ï¥ê¥¹¥È¤ÎCAR¤ÎÃæ¤Ë¤¢¤ê¡¢ CDR¤«¤é¤Ïé¤ì¤Ê¤¤¤«¤é¤Ç¤¹¡£
(setq x '(1 2 3)) ⇒ (1 2 3)
(setcdr x '(4)) ⇒ (4)
x ⇒ (1 4)
¥ê¥¹¥ÈÆâ¤Î¥³¥ó¥¹¥»¥ë·²¤ÎCDR¤òÊѹ¹¤¹¤ë¤³¤È¤Ç¡¢
¥ê¥¹¥È¤ÎÃæ¤Û¤É¤ÎÍ×ÁǤòºï½ü¤Ç¤¤Þ¤¹¡£
¤Ä¤®¤ÎÎã¤Ï¡¢¥ê¥¹¥È(a b c)
¤ÎºÇ½é¤Î¥³¥ó¥¹¥»¥ë¤ÎCDR¤òÊѹ¹¤¹¤ë¤³¤È¤Ç¡¢
¤³¤Î¥ê¥¹¥È¤ÎÂè2Í×ÁÇb
¤òºï½ü¤·¤Þ¤¹¡£
(setq x1 '(a b c)) ⇒ (a b c) (setcdr x1 (cdr (cdr x1))) ⇒ (c) x1 ⇒ (a c)
Ȣɽµ¤Ç¤Ï¡¢¤³¤Î·ë²Ì¤Ï¤Ä¤®¤Î¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£
-------------------- | | -------------- | -------------- | -------------- | car | cdr | | | car | cdr | -->| car | cdr | | a | o----- | b | o-------->| c | nil | | | | | | | | | | -------------- -------------- --------------
°ÊÁ°¤ËÍ×ÁÇb
¤òÊÝ»ý¤·¤Æ¤¤¤¿2ÈÖÌܤΥ³¥ó¥¹¥»¥ë¤Ï¤Þ¤À¸ºß¤·¤Æ¤¤¤Æ¡¢
¤½¤ÎCAR¤â¤Þ¤Àb
¤Ç¤¹¤¬¡¢¤³¤Î¥ê¥¹¥È¤Î°ìÉô¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¡£
CDR¤òÊѹ¹¤·¤Æ¿·¤¿¤ÊÍ×ÁǤòÁÞÆþ¤¹¤ë¤Î¤âƱÍͤ˴Êñ¤Ç¤¹¡£
(setq x1 '(a b c)) ⇒ (a b c) (setcdr x1 (cons 'd (cdr x1))) ⇒ (d b c) x1 ⇒ (a d b c)
Ȣɽµ¤Ç¤Ï¡¢¤³¤Î·ë²Ì¤Ï¤Ä¤®¤Î¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£
-------------- ------------- ------------- | car | cdr | | car | cdr | | car | cdr | | a | o | -->| b | o------->| c | nil | | | | | | | | | | | | --------- | -- | ------------- ------------- | | ----- -------- | | | --------------- | | | car | cdr | | -->| d | o------ | | | ---------------