我正在尝试设置一个指向#include <stdio.h>
#include <stdlib.h>
#include <math.h>
int main(void){
double (*func)(double, double) = pow;
return 0;
}
函数的函数指针。
这是我的代码:
$ gcc test.c -o test
/tmp/ccD6Pmmn.o: In function `main':
test.c:(.text+0x8): undefined reference to `pow'
collect2: error: ld returned 1 exit status
但该程序无法编译。 我收到这个错误:
{{1}}
我正在使用Ubuntu 15.10。
任何人都知道我的代码出了什么问题?
由于
答案 0 :(得分:0)
您需要通过命令行使用-lm进行编译,或者配置IDE以将其添加到链接过程中。这是因为有些库非常大并且为了避免在程序和编译时占用空间,这是在C开始时设置的,当时计算机速度慢得多,并且需要更多的编译和空间问题是CRUCIAL。