Eclipse CDT - 如何快速评估不在代码中的表达式?
Eclipse CDT - how to quickly evaluate an expression which is not in the code?
我已经离开 Eclipse CDT 一段时间了,被 JetBrains 优秀的 IDE 宠坏了(公司不让我拥有 Clion)。不可否认,这些主要用于解释型语言,而不是编译型语言,因此评估更简单。
当我在 Eclipse 中设置断点时 CDT,(如何)我可以快速计算涉及调试器已知变量的表达式,但在代码中未使用它们的方式?
例如,如果我有两个整数,i
和 j
,(如何)我可以快速评估 i + j
?
给定 char *s
是否有可能评估 stlen(s)
?还是局部函数调用的结果?
在我的脑海中,我建议使用 Expression 视图或 Console 视图,具体取决于您的流程,等等
表达式
Expressions 视图允许您添加任何任意表达式,以便在调试器每次遇到断点或完成单个步骤时由 selected 帧计算。
默认情况下,表达式 视图未打开。您可以从 Window -> Show View -> Expressions.
然后您可以按 添加新表达式 按钮并输入要计算的表达式。 (您几乎可以输入任何表达式:i+j
、strlen(s)
或您喜欢的任何其他内容)
或者,您可以:
- 从上下文菜单中,select *添加监视表达式...":
- 在弹窗中输入表达式:
- 表达式 视图将打开and/or 到顶部。
控制台
控制台视图允许您以标准 GDB syntax 输入 GDB 命令。
要使用控制台:
- Select gdb 调试视图
项
- 控制台视图现在将显示 GDB 的界面:
- 向 GDB 输入命令,例如
print i + j
或p i - j
(p
是print
的缩写):
使用控制台时的其他提示
您可以 "pin" 使用工具栏上的此按钮 select 控制台,使其保持在控制台顶部:
您可以使用此下拉菜单切换控制台:
- 您可以打开第二个控制台,例如一个用于 GDB 交互,一个用于使用此按钮输出程序:
我已经离开 Eclipse CDT 一段时间了,被 JetBrains 优秀的 IDE 宠坏了(公司不让我拥有 Clion)。不可否认,这些主要用于解释型语言,而不是编译型语言,因此评估更简单。
当我在 Eclipse 中设置断点时 CDT,(如何)我可以快速计算涉及调试器已知变量的表达式,但在代码中未使用它们的方式?
例如,如果我有两个整数,i
和 j
,(如何)我可以快速评估 i + j
?
给定 char *s
是否有可能评估 stlen(s)
?还是局部函数调用的结果?
在我的脑海中,我建议使用 Expression 视图或 Console 视图,具体取决于您的流程,等等
表达式
Expressions 视图允许您添加任何任意表达式,以便在调试器每次遇到断点或完成单个步骤时由 selected 帧计算。
默认情况下,表达式 视图未打开。您可以从 Window -> Show View -> Expressions.
然后您可以按 添加新表达式 按钮并输入要计算的表达式。 (您几乎可以输入任何表达式:i+j
、strlen(s)
或您喜欢的任何其他内容)
或者,您可以:
- 从上下文菜单中,select *添加监视表达式...":
- 在弹窗中输入表达式:
- 表达式 视图将打开and/or 到顶部。
控制台
控制台视图允许您以标准 GDB syntax 输入 GDB 命令。
要使用控制台:
- Select gdb 调试视图 项
- 控制台视图现在将显示 GDB 的界面:
- 向 GDB 输入命令,例如
print i + j
或p i - j
(p
是print
的缩写):
使用控制台时的其他提示
您可以 "pin" 使用工具栏上的此按钮 select 控制台,使其保持在控制台顶部:
您可以使用此下拉菜单切换控制台:
- 您可以打开第二个控制台,例如一个用于 GDB 交互,一个用于使用此按钮输出程序: