用c ++打印完整的回溯

时间:2011-11-02 10:44:49

标签: c++ linux g++ backtrace

我想以类似于在gdb中完成的格式从Linux中的C ++程序转储回溯。为此,我尝试使用backtrace()和backtrace_symbols()函数。这些返回的函数名称和偏移量。我可以使用__cxa_demangle()函数来获取可读的函数名称。

有没有办法获取文件/行位置,因为它是由gdb完成的?

1 个答案:

答案 0 :(得分:5)

How it's better to invoke gdb from program to print its stacktrace?`

Methode#4,显示了获取文件名和行的方法。但是使用了一个外部程序..