0

f1、f2、f3 の 3 つの関数があります。

void f1()
{
   f3();
}

void f2()
{
   f3();
}

void f3()
{
   ....
}

f3 内のどこかにブレークポイントを配置したいのですが、f3 が f1 から呼び出された場合のみです。

4

1 に答える 1

1

とりわけ解決策は、条件付きブレークポイントを設定することです。f3 の呼び出しは、int boolean

コード:

#include <stdio.h>

int boolean =0;

void f3()
{

}

void f2()
{
    boolean = 1;
    f3();
}

void f1()
{
    boolean = 0;
    f3();
}


int main()
{

    f2();
    f1();
    f2();
    f1();   

    return 0;
}

gdb で、f2 から来た場合にのみ f3 にブレークを設定します

(gdb)b f3 if boolean==1
于 2016-05-04T09:12:08.237 に答える