error C2065: 'exp' : undeclared identifier

error C2065: 'exp' : undeclared identifier

问题描述:

代码如下:
CFnn::CFnn()
{
fp=fopen("www.txt","w+");
ddd=0;
Error=0.0;
Input[0]=0;
Input[1]=0;
Output=0;
m_Bool=false;
InitNet();
}

CFnn::~CFnn()
{
fclose(fp);
}
//模糊神经网络控制的主函数
double CFnn::Control(double input1,double input2)
{
Input[0]=input1;
Input[1]=input2;
if(m_Bool==true)
{
NetIO();
Teacher();
}
m_Bool=true;
Output=NetIO();
return(Output);

}

//模糊神经网络的输入和输出的映射
double CFnn::NetIO()
{

double sum,Out;

if(ddd==2)
{
    ddd--;
    ;}
ddd++;
int i,j,k;
for(i=0;i<2;i++)
{
    for(j=0;j<9;j++)
    {
        NetIn_1[i][j]=Input[i]-W_m[i][j];
        NetOut_1[i][j]=NetIn_1[i][j]*NetIn_1[i][j];
        NetIn_2[i][j]=-NetOut_1[i][j]/(W_delta[i][j]*W_delta[i][j]);
        NetOut_2[i][j]=exp(NetIn_2[i][j]);//问题提示是这里。。。
    }
}

k=0;
for(i=0;i<9;i++)
{   

    for(j=0;j<9;j++)
    {
        NetIn_3[k]=NetOut_2[0][i]*NetOut_2[1][j];
        k++;
    }
}
sum=0;
for(i=0;i<81;i++)
    sum=sum+NetIn_3[i];
for(i=0;i<81;i++)
    NetOut_3[i]=NetIn_3[i]/sum;

Out=0;
for(i=0;i<81;i++)
{
    Out=Out+NetOut_3[i]*W_t[i];


}
Out=Out/4.0;
TRACE("the Error is :%lf    \n",Error);
TRACE("the out is :%lf    \n",Out);

return(Out);

}
小白求解释!

exp看上去是一个函数,如果是数学函数,那么你缺少include math.h

你的exp没有定义,编译器无法识别。你实现的代码包含了?

exp没有定义和声明,#include