在Eclipse for C / C ++的调试模式下,您可以右键单击任何作为指针的监视表达式并选择“显示为数组”。然后系统会提示您输入数组边界以及此调试运行的其余部分,监视的表达式将根据这些边界显示为数组。
当我终止进程并再次开始调试时,它会记住我观察到的表达式,但之前显示为数组的指针现在只是指针,因此,我必须在每次调试运行中重新构建所有指针。在最近的一个项目中,这已经非常无聊了。
有没有办法让Eclipse记住被监视表达式的“显示为数组”选项?
答案 0 :(得分:11)
您必须能够将您想要将指针看作表达式字符串本身中的数组的事实编码。
假设您有一个数组为int*
,并且您希望查看(最多)其前4个元素。
在Expressions
标签中,使用以下两个中的一个syntaxes supported by GDB:
(*arr @ 4)
((int[4])*arr)
上面的(...)
个问题非常重要。
您可以在Expressions
标签(手表)中执行此操作,但不能在Variables
标签中执行此操作。