void RenderArea :: read_curves(const QString &fileName)
{
//QVector<QPointF> data(0);
// for(int i=0;i<MAXDATA;i++)
// pr=0;
QFile file(fileName);
if (file.open(QIODevice::ReadOnly))
{
float pr[256];
float fr[256]={0};
float pi[256]={0};
float fi[256]={0};
QTextStream in(&file);
for (double x=0;!in.atEnd();x+=1)
{
QString line = in.readLine();
QStringList coords = line.split(' ',QString::SkipEmptyParts);
for(int num=0;num<coords.count();num++)
{
double y = coords[num].toDouble();
double myY = height()-y*(height()-3*margin) /300 -4*margin; //以中部为对称的坐标轴
double myX = 2*margin+x*(width()-3*margin) /110 ;
dataPoints[num].append(QPointF(myX,myY));
pr[num]=coords[num].toFloat();
}
fftdata(pr,pi,256,64,fr,fi,0,0);
for(int rec=0;rec<256;rec++){
float rss=fr[rec];
float rii=fi[rec];
float lY = height()-rss*(height()-3*margin) /300 -4*margin; //以中部为对称的坐标轴
float lX = 2*margin+rii*(width()-3*margin) /110 ;
fftPoints[rec].append(QPointF(lX,lY));
}
}
定义的fftdata是这样的。。单独的函数可以运行。。
RenderArea::fftdata(float pr[],float pi[],int n ,int k,float fr[],float fi[],int l,int il)
可是在QT中调用就会提示:
renderArea.cpp:92: 错误: expected primary-expression before ‘float’
renderArea.cpp:92: 错误: expected primary-expression before ‘float’
renderArea.cpp:92: 错误: expected primary-expression before ‘int’
renderArea.cpp:92: 错误: expected primary-expression before ‘int’
renderArea.cpp:92: 错误: expected primary-expression before ‘float’
renderArea.cpp:92: 错误: expected primary-expression before ‘float’
renderArea.cpp:92: 错误: expected primary-expression before ‘int’
renderArea.cpp:92: 错误: expected primary-expression before ‘int’
想问问是为什么??我的调用那里有问题了??谢谢了