我想在Linux下跟踪一个C程序,把所有的函数调用和返回以树的形式记录下来。 例如源码:
void a ()
{
printf("a\n");
}
void b ()
{
printf("b\n");
}
void c ()
{
a();
b();
}
int main()
{
a();
b();
c();
}
我想要如下输出:
call main
call a
exit a
call b
exit b
call c
call a
exit a
call b
exit b
exit c
exit main
这是一个理想主义的输出。我只想获取本地函数调用和返回的所有过程,所以也欢迎类似的输出。
最佳答案
gcc -finstrument-functions 完成我的工作
关于c - 如何跟踪所有本地函数调用和退出,并将其记录到文件中以供查看,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22655948/