关于C++中pow函数的疑问

fy_jing 2012-10-28 03:06:44
加了math.h,但是在main函数中调用可以,在子函数中调用就说pow未定义。。。崩溃。。。求指导啊!
...全文
1702 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
mymtom 2015-01-07
  • 打赏
  • 举报
回复
引用 4 楼 fy_jing 的回复:
晕死,各种方法都试过还是不行,最后发现原来是编译器的问题...想知道为什么用gcc就不行,用g++就可以呢?
要连接数学库啊 gcc demo.c -lm NAME exp, expf, exp2, exp2f, exp2l, expm1, expm1f, pow, powf -- exponential and power functions LIBRARY Math Library (libm, -lm) SYNOPSIS #include <math.h>
超级能量泡泡 2015-01-06
  • 打赏
  • 举报
回复
可能是#include文件的顺序问题,请仔细检查和测试
lm_whales 2015-01-06
  • 打赏
  • 举报
回复
好像函数有二义性, gcc 是编译C的,估计你的程序不是 .c 程序 或者C++ 写在 .c 中 另外 unix ,linux 是区分大小写的 .c 是 C程序,.C是C++程序 windows是不区分大小写的 .c ,.C 都是C程序,.cc,.cxx,.cpp .CC,.CXX,.CPP是C++程序 GCC编译器 用 GCC命令 编译C, G++命令编译C++ C标准库,只有一个 pow 函数, double pow(double ,double ) ; 其他统一功能的函数,都根据参数另外命名了 C++对除了双整数参数的没有重载之外,几乎全部都重载了...是模板函数吧 是同一个名字 pow 双整数参数,不能编译也许是正常的
赵4老师 2014-12-29
  • 打赏
  • 举报
回复
        double  __cdecl pow(_In_ double _X, _In_ double _Y);
wtsos 2014-12-28
  • 打赏
  • 举报
回复
eclipse下遇到这个问题了,怎么解决啊?
fy_jing 2012-10-28
  • 打赏
  • 举报
回复
晕死,各种方法都试过还是不行,最后发现原来是编译器的问题...想知道为什么用gcc就不行,用g++就可以呢?
szx_2012 2012-10-28
  • 打赏
  • 举报
回复
我在DevC++上运行了下,没问题啊!
Code研究者 2012-10-28
  • 打赏
  • 举报
回复
#include<math.h>
#include<iostream.h>
int fun()
{
int tmp=(int)pow(2,3);
return tmp;
}
int main()
{
cout<<fun()<<endl;
cout<<pow(2,3)<<endl;
return 0;
}
图灵狗 2012-10-28
  • 打赏
  • 举报
回复 1
子函数中加上#include <math.h>就可以了啊。

65,176

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

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