Next: , Previous: Altering, Up: Altering   [Contents][Index]


11.1 ÊÑ¿ô¤Ø¤ÎÂåÆþ

¤¢¤ëÊÑ¿ô¤ÎÃͤòÊѹ¹¤¹¤ë¤Ë¤Ï¡¢ ÂåÆþ¼°¤òɾ²Á¤·¤Þ¤¹¡£ See Expressions¡£ Î㤨¤Ð¡¢

print x=4

¤Ï¡¢ ÊÑ¿ôx¤ËÃÍ4¤ò³ÊǼ¤·¤Æ¤«¤é¡¢ ¤½¤ÎÂåÆþ¼°¤ÎÃÍ ¡Ê¤¹¤Ê¤ï¤Á4¡Ë ¤òɽ¼¨¤·¤Þ¤¹¡£ ¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤ë¸À¸ì¤Î±é»»»Ò¤Î¾ÜºÙ¾ðÊó¤Ë¤Ä¤¤¤Æ¤Ï¡¢ See Using GDB with Different Languages¡£

ÂåÆþ¤Î·ë²Ì¤òɽ¼¨¤µ¤»¤ë¤³¤È¤Ë´Ø¿´¤¬¤Ê¤±¤ì¤Ð¡¢ print¥³¥Þ¥ó¥É¤ÎÂå¤ï¤ê¤Ëset¥³¥Þ¥ó¥É¤ò»ÈÍѤ·¤Æ¤¯¤À¤µ¤¤¡£ ¼ÂºÝ¤Î¤È¤³¤íset¥³¥Þ¥ó¥É¤Ï¡¢ ¼°¤ÎÃͤ¬É½¼¨¤â¤µ¤ì¤º¡¢ ÃÍ¥Ò¥¹¥È¥ê ¡Êsee Value history¡Ë ¤Ë¤âÆþ¤é¤Ê¤¤¤È¤¤¤¦¤³¤È¤ò½ü¤±¤Ð¡¢ print¥³¥Þ¥ó¥É¤ÈƱÅù¤Ç¤¹¡£ ¼°¤Ï¡¢ ¤½¤Î·ë²Ì¤ÎÆþ¼ê¤À¤±¤òÌÜŪ¤È¤·¤ÆÉ¾²Á¤µ¤ì¤Þ¤¹¡£

set¥³¥Þ¥ó¥É¤Î°ú¿ô¤È¤Ê¤ëʸ»úÎó¤ÎÀèÆ¬¤ÎÉôʬ¤¬¡¢ set¥³¥Þ¥ó¥É¤Î¥µ¥Ö¡¦¥³¥Þ¥ó¥É¤Î̾Á°¤È°ìÃפ·¤Æ¤·¤Þ¤¦¤è¤¦¤Ê¾ì¹ç¤Ë¤Ï¡¢ ¤¿¤À¤Îset¥³¥Þ¥ó¥É¤Ç¤Ï¤Ê¤¯set variable¥³¥Þ¥ó¥É¤ò»ÈÍѤ·¤Æ¤¯¤À¤µ¤¤¡£ ¤³¤Î¥³¥Þ¥ó¥É¤Ï¡¢ ¥µ¥Ö¡¦¥³¥Þ¥ó¥É¤ò»ý¤¿¤Ê¤¤¤È¤¤¤¦ÅÀ¤ò½ü¤±¤Ð¡¢ set¥³¥Þ¥ó¥É¤ÈƱÅù¤Ç¤¹¡£ Î㤨¤Ð¡¢ ¥æ¡¼¥¶¡¦¥×¥í¥°¥é¥à¤Ëwidth¤È¤¤¤¦ÊÑ¿ô¤¬¤¢¤ë¾ì¹ç¡¢ ‘set width=13’¤Ë¤è¤Ã¤Æ¤³¤ÎÊÑ¿ô¤ËÃͤòÀßÄꤷ¤è¤¦¤È¤¹¤ë¤È¥¨¥é¡¼¤Ë¤Ê¤ê¤Þ¤¹¡£ ¤³¤ì¤Ï¡¢ GDB¤¬set width¤È¤¤¤¦¥³¥Þ¥ó¥É¤ò»ý¤Ã¤Æ¤¤¤ë¤¿¤á¤Ç¤¹¡£

(gdb) whatis width
type = double
(gdb) p width
$4 = 13
(gdb) set width=47
Invalid syntax in expression.

¤³¤³¤ÇÉÔÀµ¤Êɽ¸½¤È¤Ê¤Ã¤Æ¤¤¤ë¤Î¤Ï¡¢ ¤â¤Á¤í¤ó‘=47’¤ÎÉôʬ¤Ç¤¹¡£ ¥×¥í¥°¥é¥àÆâ¤ÎÊÑ¿ôwidth¤ËÃͤòÀßÄꤹ¤ë¤Ë¤Ï¡¢ °Ê²¼¤Î¤è¤¦¤Ë¤·¤Æ¤¯¤À¤µ¤¤¡£

(gdb) set var width=47

GDB¤Ï¡¢ ÂåÆþ»þ¤Î°ÅÌۤη¿ÊÑ´¹¤òC¸À¸ì¤è¤ê¤â¿¤¯¥µ¥Ý¡¼¥È¤·¤Æ¤¤¤Þ¤¹¡£ À°¿ôÃͤò¼«Í³¤Ë¥Ý¥¤¥ó¥¿·¿ÊÑ¿ô¤Ë³ÊǼ¤Ç¤­¤Þ¤¹¤·¡¢ ¤½¤ÎµÕ¤â¤Ç¤­¤Þ¤¹¡£ ¤Þ¤¿¡¢ Ǥ°Õ¤Î¹½Â¤ÂΤò¡¢ Ʊ¤¸¥µ¥¤¥º¤ÎÊ̤ι½Â¤ÂΡ¢ ¤Þ¤¿¤Ï¡¢ ¤è¤ê¾®¤µ¤¤¥µ¥¤¥º¤ÎÊ̤ι½Â¤ÂΤËÊÑ´¹¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£

¥á¥â¥ê¾å¤ÎǤ°Õ¤Î²Õ½ê¤ËÃͤò³ÊǼ¤¹¤ë¤Ë¤Ï¡¢ »ØÄꤵ¤ì¤¿¥¢¥É¥ì¥¹¤Ë¤ª¤¤¤Æ»ØÄꤵ¤ì¤¿·¿¤ÎÃͤòÀ¸À®¤¹¤ë¤¿¤á¤Ë¡¢ ‘{…}’¤ò»ÈÍѤ·¤Þ¤¹ ¡Êsee Expressions¡Ë¡£ Î㤨¤Ð{int}0x83040¤Ï¡¢ ¥á¥â¥ê¡¦¥¢¥É¥ì¥¹0x83040¤òÀ°¿ôÃͤȤ·¤Æ»²¾È¤·¤Þ¤¹ ¡Ê¥á¥â¥ê¾å¤Ë¤ª¤±¤ë¡¢ ¤¢¤ëÆÃÄê¤Î¥µ¥¤¥º¤Èɽ¸½¤ò¼¨º¶¤·¤Æ¤¤¤Þ¤¹¡Ë¡£ ¤Þ¤¿¡¢

set {int}0x83040 = 4

¤Ï¡¢ ¤½¤Î¥á¥â¥ê¡¦¥¢¥É¥ì¥¹¤ËÃÍ4¤ò³ÊǼ¤·¤Þ¤¹¡£