C++中求幂的问题
首先需要说明我使用的是vs2005,然后我执行下面的代码发现b根本就不是a的平方而是输出了0!网上查到有人说可以使用Pow函数,然后我又添加了c的判断,结果居然编译不通过...
首先需要说明我使用的是vs2005,然后我执行下面的代码发现b根本就不是a的平方而是输出了0!
网上查到有人说可以使用Pow函数,然后我又添加了c的判断,结果居然编译不通过!提示error C2668: 'pow' : ambiguous call to overloaded function
请高手看下~!
//C++中的求幂运算
#include<iostream>
#include <math.h>
using namespace std;
void main()
{
int a=2,b,c=0;
b=a^2;
//c=pow(a,2);
cout<<b<<" "<<c;
}
我刚把pow这句转换成了pow((float)a,2)可以编译通过了
我现在最想知道的是,我的#include <math.h>这句在VS中没有作用吗?
我知道#include<iostream>这句单独在VS中是没有作用的,必须添加using namespace std;来增加命名空间,但是我又查不到math.h在VS中相应的命名空间,完全不知道该怎么弄了
==============================================================================
xrhigh,你说的cmath我加载之后利用^运算的结果居然是0,跟加载math.h是一样的结果啊,难道求幂必须使用函数pow? 展开
网上查到有人说可以使用Pow函数,然后我又添加了c的判断,结果居然编译不通过!提示error C2668: 'pow' : ambiguous call to overloaded function
请高手看下~!
//C++中的求幂运算
#include<iostream>
#include <math.h>
using namespace std;
void main()
{
int a=2,b,c=0;
b=a^2;
//c=pow(a,2);
cout<<b<<" "<<c;
}
我刚把pow这句转换成了pow((float)a,2)可以编译通过了
我现在最想知道的是,我的#include <math.h>这句在VS中没有作用吗?
我知道#include<iostream>这句单独在VS中是没有作用的,必须添加using namespace std;来增加命名空间,但是我又查不到math.h在VS中相应的命名空间,完全不知道该怎么弄了
==============================================================================
xrhigh,你说的cmath我加载之后利用^运算的结果居然是0,跟加载math.h是一样的结果啊,难道求幂必须使用函数pow? 展开
4个回答
展开全部
在viusal studio 2005里最好把你的预处理指令 #include <math.h>改为#include <cmath>,因为头文件<cmath>已取代了<math.h>头文件。这句在VS里当然有用。只有包含了这个头文件,你才可以用内置的数学库函数(比如:pow),在VB里^运算符是求幂,可以像你那样写,但在C++里^却不是用来求幂的,它是一个异或运算符,另外VS里pow函数接受的第一个参数得是一个浮点数。而且它返回的值也是一个浮点数。你可以像这样:
int a=2;
double c = pow(static_cast<double>(a),2);
cout << c;
int a=2;
double c = pow(static_cast<double>(a),2);
cout << c;
展开全部
overloaded 是说超负载了,
math库中关于pow的说明如下:
原型:extern float pow(float x, float y);
用法:#include <math.h>
功能:计算x的y次幂。
说明:x应大于零,返回幂指数的结果。
你换float或者double试试看吧,我不用vs没办法帮你调。
math库中关于pow的说明如下:
原型:extern float pow(float x, float y);
用法:#include <math.h>
功能:计算x的y次幂。
说明:x应大于零,返回幂指数的结果。
你换float或者double试试看吧,我不用vs没办法帮你调。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
pow要求double参数。~~~
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2009-11-01
展开全部
^是异或运算符 相等返回0,否则返回1
我用dev-c++ 使用pow函数可以通过啊
没用过vs2005不知道问题出在哪
我用dev-c++ 使用pow函数可以通过啊
没用过vs2005不知道问题出在哪
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询