如何在gdb命令中打印函数的输入和输出?

如何在gdb命令中打印函数的输入和输出?,gdb,Gdb,我试过下面的方法,但是我只看到了第一个printf语句,从来没有看到一个说“离开”的语句。这可能吗 break MyFunctionName commands silent printf "Entering MyFunctionName\n" finish printf "Leaving MyFunctionName\n" continue end 这可能吗 break MyFunctionName commands silent printf "Entering

我试过下面的方法,但是我只看到了第一个printf语句,从来没有看到一个说“离开”的语句。这可能吗

break MyFunctionName
commands
  silent
  printf "Entering MyFunctionName\n"
  finish
  printf "Leaving MyFunctionName\n"
  continue
end
这可能吗

break MyFunctionName
commands
  silent
  printf "Entering MyFunctionName\n"
  finish
  printf "Leaving MyFunctionName\n"
  continue
end
不,这是gdb的行为:

在命令恢复后,命令列表中的任何其他命令 执行,则忽略。这是因为任何时候你恢复执行 (即使是简单的下一步或下一步),您也可能会遇到另一个问题 断点可能有自己的命令列表,导致 关于要执行哪个列表的含糊不清

finish
是恢复执行的命令,因此忽略命令列表中剩余的两个命令:

  printf "Leaving MyFunctionName\n"
  continue