• 13833阅读
  • 3回复

提示:expected primary-expression before ‘float’??? [复制链接]

上一主题 下一主题
离线zhaoyd422
 
只看楼主 正序阅读 楼主  发表于: 2009-06-07
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’
想问问是为什么??我的调用那里有问题了??谢谢了
天天看点就好~~
离线fandeyao
只看该作者 3楼 发表于: 2009-09-23
错误: expected primary-expression before ‘double’
我在调用前面定义好的函数时就出现了这样的问题
前面定义的函数是:void rgbTohsi(double *hsi, double *rgb);
调用处是:displayArea->rgbTohsi(double *hsi, double *rgb);显示错误在调用处

请高人帮忙解决一下,谢谢!
离线dbzhang800

只看该作者 2楼 发表于: 2009-09-23
renderArea.cpp:92:

哪个是92行??
离线fandeyao
只看该作者 1楼 发表于: 2009-09-23
我最近也遇到同样的问题      楼主有没有解决呀   告诉一下是什么原因    谢谢!
快速回复
限100 字节
 
上一个 下一个