【问题标题】:How do I make GDB call a given function several times automatically?如何让 GDB 自动多次调用给定函数?
【发布时间】:2012-01-11 14:16:36
【问题描述】:

我想让 GDB 自动调用给定函数很多次,比如 100 次。有什么命令可以让我这样做吗?

【问题讨论】:

    标签: gdb


    【解决方案1】:

    将此示例脚本保存到文件中,例如 my_gdb_extensions

    define fcall_n_times
     set $count = $arg0
     set $i=0
     while($i < $arg0)
      call $arg1
      set $i = $i + 1
     end
    end
    

    您可以找到更多关于 gdb 扩展的信息here.

    $ gdb -x my_gdb_extensions <your_bin>
    (gdb) start
    (gdb) fcall_n_times 10 fact(3)
    

    在上述示例中,10 是您要调用该函数的次数。 fact(3)是函数名,参数为3。

    【讨论】:

    • 您也可以使用while ($i++ &lt; $count) 并稍微缩短代码。此外,您的 $count 未使用。
    猜你喜欢
    • 2020-08-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-08-11
    • 2015-11-08
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多