调试使用(C 或 C++)的程序时,gdb
将复数显示为 _M_value = xxx + yyy*I
(类型为 复双数
).
调试时,我需要打印该数字乘以一个因数。
以下不起作用:
print a * 8.0
我得到Argument to arithmetic operation not a number or boolean
。
此外,我无法访问实部和虚部,因此我可以编写一个 gdb 宏来执行上述操作。我目前的解决方案是编写一个 C 函数来处理复杂的值和数组,并从 gdb 调用该函数。不知何故,这感觉不对。
最佳答案
如果您使用标准的 C++ 复杂模板,那么 complex::real() 和 complex::imaj() 应该可以工作。
我的2c
注意:是评论^^
关于c++ - GDB - 访问复数的实部和虚部,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4583993/