如何调试使用gdb在另一个程序中调用的程序?

时间:2019-06-07 23:39:57

标签: c gdb

程序X:

#include <stdio.h>

int main(){
    system("./programY");
    return 0;
}

程序Y:

#include <stdio.h>

int main(){
    char buf[] = "AAAAAAAAAAA";
    printf("%s", buf);
    return 0;
}

因此,在调试时,当我基本上在行system()上设置断点并执行nexti时,而不是gdb进入程序Y堆栈,它只是跳到程序X return 0

他们建议在线程中在程序Y中设置一个sleep()函数,但是如果我这样做了并通过gdb运行它,则调试器基本上会停止运行,直到计时器结束。

反正我可以在调试器中通过程序X检查程序Y吗?

0 个答案:

没有答案