sin函数为什么找不到?提示“undefined reference to sin”。有什么具体的解决办法?谢谢!

aclcla 2013-11-11 04:15:12
我的环境是linux下eclipse ,c/c++。我的程序是:
#include<math.h>
#include<stdio.h>
void main(){
double x,s=1;
printf("Please input your x:\n");
scanf("%lf",&x);
//s=sin(x);
printf("Sin(x) is :%lf",s);

}

注:由于sin找不到,我就把倒数第二行给注掉了。
...全文
1066 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
aclcla 2013-11-14
  • 打赏
  • 举报
回复
各位大神,你们所说的叫我用敲命令的方法(加上-lm)是行得通的。但是,如果我非要在eclipse里运行通过的话,怎么办?我是否需要解决两个问题? 1.配置工程,使得gcc后面带上lm(这个怎么配置呢?谢谢!) 2.math.h里没有sin函数。是否意味着ubuntu环境下的eclipse(c/c++)math头文件根本就不考虑sin函数?我是否可以解决的办法?谢谢!
aclcla 2013-11-14
  • 打赏
  • 举报
回复
我发现这个sin在我的头文件里根本就找不到,这是什么原因?谢谢!
Sky丶Memory 2013-11-13
  • 打赏
  • 举报
回复
查下GCC编译参数吧,不然遇到类似这种问题还是问题
vrace 2013-11-11
  • 打赏
  • 举报
回复
我记得是 sinf ?
max_min_ 2013-11-11
  • 打赏
  • 举报
回复
加上对应的库引导呗! -lm
图灵狗 2013-11-11
  • 打赏
  • 举报
回复
需要链接数学库libm,gcc main.c -lm 另外void main()最好改为: int main(int argc, char* argv[]) { ... return 0; }
引用 楼主 aclcla 的回复:
我的环境是linux下eclipse ,c/c++。我的程序是: #include<math.h> #include<stdio.h> void main(){ double x,s=1; printf("Please input your x:\n"); scanf("%lf",&x); //s=sin(x); printf("Sin(x) is :%lf",s); } 注:由于sin找不到,我就把倒数第二行给注掉了。
JiMoKuangXiangQu 2013-11-11
  • 打赏
  • 举报
回复
链接的时候加上 -lm 参数试试。

3,882

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 其它技术问题
社区管理员
  • 其它技术问题社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧