石头3494 发表于 2016-12-2 19:03:53

pow(2,i) 行不通吗?换成两个数字就可以,一个变量不行?

刚入门学习,在C语言第一季的S1EI6课后作业里的最后一题的代码里面pow(2,i) 为啥我的机子上行不通呢,就算是复制代码编译也会显示test3.c:(.text+0x35): undefined reference to `pow'
collect2: ld returned 1 exit status
下面是鱼c的代码,请问各位你们的机子上行的通吗?


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

int main()
{
      unsigned long long sum = 0;
      unsigned long long temp;
      unsigned long long weight;
      int i;

      for (i=0; i < 64; i++)
      {
                temp = pow(2, i);               
                sum = sum + temp;
      }

      weight = sum / 25000;

      printf("舍罕王应该给予达依尔%llu粒麦子!\n", sum);
      printf("如果每25000粒麦子为1kg,那么应该给%llu公斤麦子!\n", weight);

      return 0;
}

四十二 发表于 2016-12-2 23:08:18

你贴全了吗……

pow这个函数你怎么声明的。

zzzz76 发表于 2016-12-3 01:57:21

代码没问题,可以运行
目测楼主没加-ml
如果是其他地方问题的话百度报错的提示,这种问题一收一大堆....

石头3494 发表于 2016-12-3 14:05:58

zzzz76 发表于 2016-12-3 01:57
代码没问题,可以运行
目测楼主没加-ml
如果是其他地方问题的话百度报错的提示,这种问题一收一大堆....

谢谢,已经解决了 确实是因为没连接对应的函数库 之前玩过会JAVA 这里的问题百度解决不了,虽然是个小问题 谢谢了

zzzz76 发表于 2016-12-3 14:48:16

石头3494 发表于 2016-12-3 14:05
谢谢,已经解决了 确实是因为没连接对应的函数库 之前玩过会JAVA 这里的问题百度解决不了,虽然是个小问 ...

正在学习java{:10_279:}

石头3494 发表于 2016-12-3 15:15:43

zzzz76 发表于 2016-12-3 14:48
正在学习java

我是从JAVA开始接触编程的 JAVA只学到了SE的基础部分呢,JAVA用来写确实感觉比C轻松多了,但是呢,对于学习来说感觉并没有卵用

bravo 发表于 2016-12-4 13:53:15

石头3494 发表于 2016-12-3 14:05
谢谢,已经解决了 确实是因为没连接对应的函数库 之前玩过会JAVA 这里的问题百度解决不了,虽然是个小问 ...

请问你的问题是gcc的时候没有家-lm引起的吗?
我也遇到了 但是我加了-lmpow里面还是只能用常数,如果pow(a,b)有变量就不行

石头3494 发表于 2016-12-4 17:47:24

bravo 发表于 2016-12-4 13:53
请问你的问题是gcc的时候没有家-lm引起的吗?
我也遇到了 但是我加了-lmpow里面还是只能用常数,如果p ...

你可以贴出代码来吗? 我的已经解决了,说明pow这个函数是可以代入变量的 话说本来就该可以,之前我3玩
JAVA都没这么麻烦的说你贴出来吧 或者把编译的时候抛出来的异常提示发出来也可以 最好两者都弄

石头3494 发表于 2016-12-4 17:50:21

bravo 发表于 2016-12-4 13:53
请问你的问题是gcc的时候没有家-lm引起的吗?
我也遇到了 但是我加了-lmpow里面还是只能用常数,如果p ...

小哥一起学习呗身边就自己自学好无聊的说 啊哈 介绍几个妹子来呗!~(*^_^*)~
页: [1]
查看完整版本: pow(2,i) 行不通吗?换成两个数字就可以,一个变量不行?