全部展开
在c语言中使用POW函数:
#包含
#定义访问100
双功能1 (双,整数);
双精度函数2 (双精度,整数);
双电源2 (双精度,双精度);
intmain () )。
printf(%lf )、pow2) 5.21、4.11 );
返回0;
}
双电源2 (双精度,双精度) {
if(a==0b0) {
返回0;
}
ELSEif(a==0b=0) {
返回1/0;
}
ELSEif(A0! (B-(int ) B0.0001|(B-(int ) b0.999 ) ) ) 0
返回1/0;
}
if(a=2a=0) {
双精度=a-1;
双安swer=1;
for(inti=1; I
answer=answerfunc1(t,I ) *func2(b ) b,I );
}
返回响应器;
}
elseif(A2 ) {
inttime=0;
wile(A2 ) {
a=a/2;
时间;
}
返回电源2 (a,b )电源2 (2,b*time );
}
else{
if () int ) b%2==0) {
返回电源2 (-a,b );
}
else{
返回电源2 (-a,b );
}
}
}
双功能1 (双功能,intn ) {
双安swer=1;
for(inti=0; I
answer=answer*t;
}
返回响应器;
}
双功能2 (双功能,intn ) {
双安swer=1;
for(inti=1; i=n; I ) {
answer=answer*(B-I1 )/i;
}
返回响应器;
}
数据扩展
c具有以下pow函数重载格式:
双电源(双电源,英特尔);
浮动电源(浮动,浮动);
浮动电源(floatx,intY );
长双精度(长双精度,长双精度;
长双精度(long doublepow,intY );
使用时,请合理配置参数类型636 f 707962616964757 a 686964616 f 3133431373861,以确保多个“pow”实例与参数列表不匹配。
其中最容易发生重载的是使用类似:的形式
intX,y;
intnum=pow(x,y );
这是一个常见的函数,编译器警告多个“pow”实例与参数列表相匹配。
可以使用强制类型转换解决此问题。 num=pow () float ) x,y );