c语言 - GDB - 不显示调用命令的结果



我有一个非常精细的打印函数来帮助我调试。不幸的是,它直接打印到指定的文件流,而不是返回字符串(它返回一些不相关的值(。 当我在 GDB 中调用help call时,call似乎没有任何参数。真的无法隐藏call命令的返回结果吗?还是有另一个命令我应该娱乐?

我们可以将函数的结果转换为void丢弃其值。

<小时 />

兆威

callnoresult.c

#include <stdio.h>
void pretty_printer() {
        fprintf(stderr, "Hello world!n");
}
int main() {
        return 0;
}

然后,在终端中:

gcc callnoresult.c -o callnoresult
gdb ./callnoresult
<gdb message>
b main
run
call (void) pretty_printer()
<"Hello world!">
<小时 />

看看选角到void到底有什么作用? 有关演员表的更多信息。

最新更新