在调试c++程序时无法显示局部变量解决办法:
调试程序时,在gdb内p var,会提示No symbol "var" incurrent context.
即使没有使用任何编译优化选项,仍然不能查看,放狗搜了一下,可能是这些变量被优化到寄存器中,gdb无法读取。
解决方案:在编译是加入 ‘-gstabs+’ 选项,比如:
g++ -g -Wall -gstabs+ -o main.o main.cpp
gdb main,就可以查看局部变量了。
在eclipse中,工程-〉属性-〉C/C++Build->Settings->Tool Settings->Gcc c++ Complier->Miscellaneous
在other flags中添加 –gstabs+即可