似乎无法定位数学库。编译此程序时出现错误:
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;
}
3条答案
按热度按时间bxfogqkk1#
编译程序时需要链接数学库,如下所示:
Here很好地解释了为什么需要<math.h>。
6jjcrrmo2#
如果您在基于Debian的Linux环境中使用GNU GCC编译器,请将“libm. a”添加到“链接库”中。
1.点击“项目”
1.单击“构建选项”。
1.单击“链接器设置”选项卡
1.单击“链接库”下的“添加”按钮
1.键入“libm.a”并单击“确定”
1.再次单击“OK”(这次是在“Project build options”(项目构建选项)窗口上)
并确保您具有#include<math.h>
zvms9eto3#
另一种方法是:
1.点击"设置",
1.点击"编译器",
1.点击"链接器设置"选项卡,
1.点击"添加",
1.键入"libm.a"并单击"确定",
1.点击"确定",即可完成。
您已经准备好使用gcc链接到linux上的数学库(不要忘记在源代码中添加"#include")。<math.h>" in your source code).