如何在 gdb 中使用数学函数

How to use math functions with gdb

我是一名学生,我遇到了一个问题:当我在我的 Linux 程序中使用 powasin 并尝试使用 GDB 对其进行调试时,出现错误:未定义参考 'pow'.

我知道要在 GCC 编译器中解决这个问题,我需要添加 -lm 键。 GDB 是否有像 -lm 这样的键?

gdb 使用编译后的文件进行调试。所以在使用 -lm 和 -g 之后,你可以 运行 通常使用 gdb 生成的文件。换句话说,您应该运行宁以下对我有用:

gcc -g test.c -lm
gdb ./a.out

要使用数学函数,您必须使用 -lm 选项编译源代码(这将消除数学函数的未定义引用错误), 为了使调试符号在 gdb 中可用,您必须使用 -g 选项编译源代码。

gcc -g -o myprog main.c -lm

调试程序运行

gdb ./myprog

要在使用 gdb 调试期间打印或使用任何函数,请使用 gdb 的 call 函数

call (double)pow(3.0, 2.0)

确保使用正确的函数语法,否则gdb return错误答案

call (double) pow (double , double)