C++编程,出现一个错误 error C2064: term does not evaluate to a function不懂求解 代码如下:

#include <iostream>
using namespace std;
int calculate(float P,float r,float n);

int main()
{
float P,r,n,V;
cout<<"P:1000,2000,3000,4000,5000,6000,7000,8000,9000,10000\n";
cout<<"r:0.10,0.11,0.12,0.13,0.14,0.15,0.16,0.17,0.18,0.19,0.20\n";
cout<<"n:1,2,3,4,5,6,7,8,9,10\n";
cout<<"please input P,r,n\n";
cin>>P;
cout<<"\n";
cin>>r;
cout<<"\n";
cin>>n;
cout<<"\n";
calculate(P,r,n);
cout<<"V="<<V<<"\n";
return 0;
}

int calculate(float P,float r,float n)
{
int i;
float V;
for(i=0;i<n;i++)
{
V=P(1+r);
P=V;
}
return V;
}提示的错误行是 V=P(1+r);
出现这个错误的原因是什么?为什么会出现这个错误,求大神解答,谢谢

如楼上兄弟所述。
P(1+r)这里有问题。
error C2064: term does not evaluate to a function的意思就是:
错误C2064:名词不能作为函数。

这里就是指P是一个变量,而不是函数,所以不能按P(1+r)来使用。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2015-08-04
V=P(1+r);改下

V=P*(1+r);
相似回答