读书人

一个施用cos()数的程序报错求解

发布时间: 2013-07-04 11:45:44 作者: rapoo

一个使用cos()数的程序,报错求解

#include <math.h>
#define PI 3.1416
#define MAX 180

main ()
{
int angle;
float x,y;

angle = 0;
printf(" Angle Cos(angle)\n\n");

while (angle <= MAX)

{
x = (PI/MAX)*angle;
y = cos(x);
printf("%15d %13.4f\n",angle,y);
angle = angle + 10;
}

}

==============================================
[root@gxing sourcecode]# gcc cosfun.c
/tmp/cc2g9KZh.o(.text+0x58): In function `main':
: undefined reference to `cos'
collect2: ld returned 1 exit status

linux GCC编译时报错:这是书本的例子,强人帮看看到到底那里问题? cos()?GCC错误 Linux GCC printf
[解决办法]
使用 gcc -lm 进行编译 GCC 的”-lm”选项,它告诉 GCC 查看系统提供的数学库(libm)。因为Linux和UNIX的系统函数库通常以”lib”为前缀,所以我们假设它存在。真正的函数库位置随系统的不同而不同,但它一般会位于目录/lib或/usr/lib中,在这些目录中还有数以百计的其他必需的系统函数库。
[解决办法]
#include <stdio.h>
#include <math.h>
#define PI 3.1416
#define MAX 180
int main ()
{
int angle;
double x,y;

angle = 0;
printf(" Angle Cos(angle)\n\n");

while (angle <= MAX) {
x = (PI/MAX)*angle;
y = cos(x);
printf("%15d %13.4lf\n",angle,y);
angle = angle + 10;
}
return 0;
}

读书人网 >C语言

热点推荐