(来自百度搜索)
原型:在TC2.0中原型为extern float pow(float x, float y); ,而在VC6.0中原型为double pow( double x, double y );
功能:计算x的y次幂。
返回值:x不能为负数且y为小数,或者x为0且y小于等于0,返回幂指数的结果。
返回类型:
double型,int,float会给与警告!
举例1:(在VC6.0中运行通过)
1
2
3
4
5
6
7
8
|
#include<math.h>
#include<stdio.h>
int
main(
void
)
{
doublex=2.0,y=3.0;
printf
(
"%lfraisedto%lfis%lf\n"
,x,y,
pow
(x,y));
return0;
}
|
举例2: (在TC2.0中运行通过)
1
2
3
4
5
6
7
8
9
10
11
|
//pow.c
#include<syslib.h>
#include<math.h>
main()
{
clrscr();
//clearscreen
textmode(0x00);
//6linesperLCDscreen
printf
(
"4^5=%f"
,
pow
(4.,5.));
getchar
();
return0;
}
|
pow函数的重载编辑
C++提供以下几种pow函数的重载形式:
double pow(double X,int Y);
float pow(float X,float Y);
float pow(float X,int Y);
long double pow(long double X,long double Y);
long double pow(long double X,int Y);
使用的时候应合理设置参数类型,避免有多个“pow”实例与参数列表相匹配的情况。
其中较容易发生重载的是使用形如:
int X,Y;
int num=pow(X,Y);
这是一个比较常用的函数,但是编译器会提醒有多个“pow”实例与参数列表相匹配。
可以使用强制类型转换解决这个问题:num=pow((float)X,Y);