当前时区为 UTC + 8 小时



发表新帖 回复这个主题  [ 4 篇帖子 ] 
作者 内容
1 楼 
 文章标题 : 【求助】gcc编译c文件,不能调用sin,cos,exp等函数~~
帖子发表于 : 2011-04-02 20:14 

注册: 2011-03-29 22:57
帖子: 6
送出感谢: 0 次
接收感谢: 0 次
我用gedit写了一个fft.c的文件,然后用下面代码编译
代码:
gcc -Wall fft.c -o fft.out

然后出现如下错误:
fft.c:78: warning: return type of ‘main’ is not ‘int’
fft.c: In function ‘main’:
fft.c:96: warning: format ‘%f’ expects type ‘double’, but argument 2 has type ‘complex’
/tmp/ccP5bnmV.o: In function `complex_exp':
fft.c:(.text+0xf): undefined reference to `exp'
fft.c:(.text+0x2c): undefined reference to `cos'
fft.c:(.text+0x54): undefined reference to `sin'

collect2: ld returned 1 exit status
加粗的三行是最关键的,在子函数里我调用了sin cos和exp三个函数,我在c文件最开始包含了math.h文件和stdio.h文件
有谁知道是怎么回事吗~~

附c文件:

代码:
#include<stdio.h>
#include<math.h>
#define M_PI 3.14159265358979323846
…………
typedef struct {
   float r,i;
}complex;

typedef struct {
   double r,i;
}doublecomplex;

void complex_exp(complex *r,complex *z)
{
        double expx;
   expx = exp((double)z->r);
   r->r = (float)expx * cos((double)z->i);
   r->i = (float)expx * sin((double)z->i);
}

void fftc(complex *x,long *n,long *isign)
{
       ……………………
}

void main()
{
       ...............................
       fftc(.........)
       ..................................
}


页首
 用户资料  
 
2 楼 
 文章标题 : Re: 【求助】gcc编译c文件,不能调用sin,cos,exp等函数~~
帖子发表于 : 2011-04-02 20:22 

注册: 2007-10-22 16:54
帖子: 344
送出感谢: 0 次
接收感谢: 8
gcc -lm -o ffc.out ffc.c

加了 -lm 就是让gcc找到包含文件:math.h


页首
 用户资料  
 
3 楼 
 文章标题 : Re: 【求助】gcc编译c文件,不能调用sin,cos,exp等函数~~
帖子发表于 : 2011-04-02 20:27 

注册: 2011-03-29 22:57
帖子: 6
送出感谢: 0 次
接收感谢: 0 次
wutong 写道:
gcc -lm -o ffc.out ffc.c

加了 -lm 就是让gcc找到包含文件:math.h


可以用了!太感谢了!!

不过现在数据输出还是不对,估计是我程序写的有问题~
:em06


页首
 用户资料  
 
4 楼 
 文章标题 : Re: 【求助】gcc编译c文件,不能调用sin,cos,exp等函数~~
帖子发表于 : 2011-04-02 21:02 
头像

注册: 2011-04-02 19:28
帖子: 441
送出感谢: 1
接收感谢: 1
M_PI定义的有问题吧


_________________
本人已死,小事烧纸,大事招魂。


页首
 用户资料  
 
显示帖子 :  排序  
发表新帖 回复这个主题  [ 4 篇帖子 ] 

当前时区为 UTC + 8 小时


在线用户

正在浏览此版面的用户:没有注册用户 和 3 位游客


不能 在这个版面发表主题
不能 在这个版面回复主题
不能 在这个版面编辑帖子
不能 在这个版面删除帖子
不能 在这个版面提交附件

前往 :  
本站点为公益性站点,用于推广开源自由软件,由 DiaHosting VPSBudgetVM VPS 提供服务。
我们认为:软件应可免费取得,软件工具在各种语言环境下皆可使用,且不会有任何功能上的差异;
人们应有定制和修改软件的自由,且方式不受限制,只要他们自认为合适。

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
简体中文语系由 王笑宇 翻译