在 Eclipse for C/C++ 的调试模式下,您可以右键单击任何作为指针的监视表达式,然后选择“显示为数组”。然后系统会提示您输入数组边界,并且在此调试运行的其余部分中,监视的表达式将根据这些边界显示为数组。
当我终止进程并再次开始调试时,它会记住我监视的表达式,但是以前显示为数组的指针现在将再次成为指针,因此,我必须在每次调试运行中重新转换所有指针。在最近的一个项目中,这变得非常令人厌烦。
有没有办法让 Eclipse 记住监视表达式的“显示为数组”选项?
在 Eclipse for C/C++ 的调试模式下,您可以右键单击任何作为指针的监视表达式,然后选择“显示为数组”。然后系统会提示您输入数组边界,并且在此调试运行的其余部分中,监视的表达式将根据这些边界显示为数组。
当我终止进程并再次开始调试时,它会记住我监视的表达式,但是以前显示为数组的指针现在将再次成为指针,因此,我必须在每次调试运行中重新转换所有指针。在最近的一个项目中,这变得非常令人厌烦。
有没有办法让 Eclipse 记住监视表达式的“显示为数组”选项?
您必须能够将您希望将指针视为表达式字符串本身中的数组这一事实进行编码。
假设您有一个数组 asint*
并且您想查看(最多)它的前 4 个元素。
在选项卡中,使用GDB 支持的Expressions
以下两种语法之一:
(*arr @ 4)
((int[4])*arr)
上面周围的(...)
括号很重要。
您可以在Expressions
选项卡(手表)中执行此操作,但不能在Variables
选项卡中执行此操作。