c++中的指数函数怎么写

C里面函数原型是double pow(double,double),需要包含math.h。
C++里面推荐这样用(包含ISO C++从C继承的数学函数库,但头文件不带.h扩展名且前面加c,需要用namespace std,函数原型与C中相同):

#include
  //添加需要包含的头文件...
using namespace std;
int main()
{
    double d,a=2,b=3;
    d=pow(a,b);
    //d=a^b
    //添加代码...
    return 0;
}

另外如果使用底数为e,可以用double exp(double),用法与以上类似

要不使用库函数,求幂指数,只能靠自己写该功能的函数。

即按照数学规则,将a重复乘b次,即得到a的b次幂。

1 对于0次幂,直接返回1

2 对于正数,按照参数b进行乘方。

3 对于负数,先按照参数b的绝对值进行乘方,再求倒数。

代码如下:

double my_pow(doubel a, int b)
{
    int s=0,i;
    double r = 1;
    if(b == 0) return 1;
    if(b<0)
    {
        b*=-1;
        s = 1;
    }
    for(i = 0; i < b; i ++)
        r *= a;
    if(s)r=1/s;
    return r;
}

 

你可能感兴趣的:(opencv,C++笔记)