我想调试一个在标识符扩展中使用美元的程序。
拿
#include <stdio.h>
int main()
{
int $a = 42, b= 43;
printf("%d %d\n", $a, b);
}
Run Code Online (Sandbox Code Playgroud)
举个简单的例子。如果我在 gdb 下运行它,我可以b使用进行检查p b,但因为p $a我得到void. 我只能用info locals.
有没有办法在 gdb 中引用包含 $ 的标识符?
gdb在解析要打印的表达式之前解释首字母$in 。p $a
但请注意,它仅对初始$: 如果该$符号出现在符号中间(例如:p a$1),则该变量将正确打印。
对于名称以美元符号开头的局部变量,一种解决方法是打印所有局部变量
info locals
Run Code Online (Sandbox Code Playgroud)