11

I have a codepad .

On line 15 inside a for function

 for(i=2; i<=90; i+=2){
    int j=0+i;
    printf("%i\n",i);
    power=pow(inp,j);
    factor=factorial(i);
    if(i%4==0)fAns += power/factor;
    else fAns -= power/factor;
  }

the line power=pow(inp,j); I added j instead of just using i because it gave me the same error. undefined reference to 'pow'.

If I replace j with 2, then it works just fine but when I use j=i it wont work. Is there a problem with incrementing this line?

I want this to increment and not throw me an error.

Mysticial
  • 452,826
  • 45
  • 327
  • 325
user1082764
  • 1,883
  • 8
  • 24
  • 38

1 Answers1

28

You need to link with the math library. With gcc, this would mean passing -lm during linking.

The reason it doesn't complain when you use 2 as the exponent value is because the compiler is optimizing the pow call out.

John Ledbetter
  • 12,683
  • 1
  • 55
  • 78