为什么下面的代码在C中有效:
int res = pow(2, 3);
printf("%d\n", res);
Run Code Online (Sandbox Code Playgroud)
而这另一个不?
int a = 2;
int b = 3;
int res = pow(a, b);
printf("%d\n", res);
Run Code Online (Sandbox Code Playgroud)
即使我试试
double a = 2;
double b = 3;
double res = pow(a, b);
printf("%f\n", res);
Run Code Online (Sandbox Code Playgroud)
我得到了
未明确引用`pow'
我究竟做错了什么?
我有一个键盘.
在第15行内的for函数
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;
}
Run Code Online (Sandbox Code Playgroud)
power=pow(inp,j);我添加的行j而不是使用,i因为它给了我同样的错误.undefined reference to 'pow'.
如果我j用2 替换,那么它工作正常,但当我使用j=i它不会工作.递增此行是否有问题?
我希望这个增加,而不是给我一个错误.
正如此处提到的:尽管包含 math.h,但在 C 中对 pow( ) 的未定义引用,我可以仅在终端中构建在 Linux Ubuntu 中使用 math.h 函数的 C 文件,方法是-lm在gcc -o namefile namefile.c. 但我想构建并运行一个专门在 VSCode 中使用 math.h 的 C 代码。我怎么做?