C语言 如何在代码块中将数学库链接到编译器?

xpszyzbs  于 2023-02-03  发布在  其他
关注(0)|答案(3)|浏览(142)

似乎无法定位数学库。编译此程序时出现错误:

undefined reference to'pow'

我完全不知道这件事。

#include <stdio.h>
#include <math.h>

int main() {
    int number1, temp, number2 = 0, x, count = 0;
    printf ("Enter number: ");
    scanf("%d", &number1);

    x = number1;
    while (number1 > 0)
    {
        temp = number1 % 10;
        number2 = (number2 + temp)*pow(10, count++);
        number1 = number1/10;
    }

    printf("The original number order was: %d\n", x);
    printf("\n");

    printf("The reverse number order is: %d\n", number2);
    return 0;
}
bxfogqkk

bxfogqkk1#

编译程序时需要链接数学库,如下所示:

gcc test.c -lm

Here很好地解释了为什么需要<math.h>。

6jjcrrmo

6jjcrrmo2#

如果您在基于Debian的Linux环境中使用GNU GCC编译器,请将“libm. a”添加到“链接库”中。
1.点击“项目”
1.单击“构建选项”。
1.单击“链接器设置”选项卡
1.单击“链接库”下的“添加”按钮
1.键入“libm.a”并单击“确定”
1.再次单击“OK”(这次是在“Project build options”(项目构建选项)窗口上)
并确保您具有#include<math.h>

zvms9eto

zvms9eto3#

另一种方法是:
1.点击"设置",
1.点击"编译器",
1.点击"链接器设置"选项卡,
1.点击"添加",
1.键入"libm.a"并单击"确定",
1.点击"确定",即可完成。
您已经准备好使用gcc链接到linux上的数学库(不要忘记在源代码中添加"#include")。<math.h>" in your source code).

相关问题