C中的mathgl和单字母变量名

时间:2013-09-29 04:15:15

标签: c qt mathgl

我正在尝试在QT窗口中实现MATHGL图。 适当的库的编译很顺利,并且示例提供了编译和运行而没有错误。

当我尝试构建示例代码时,当我尝试添加名为variable 的单个字母而不管其类型(int,double,其他)时,会发生一些奇怪的事情。

这个简单的代码说明了问题

#include <mgl2/mgl_cf.h>

int sample(HMGL gr, void *p)
{
  int I; /* REMOVE THIS LINE OR RENAME VARIABLE (TWO LETTERS) FOR COMPILATION  */  

  mgl_rotate(gr,40.,60.,0.);
  mgl_box(gr);

  return 0;
}

int main(int argc,char **argv)
{
  HMGL gr;
  gr = mgl_create_graph_qt(sample,"MathGL examples",0,0);
  return mgl_qt_run();
}

MATHGL版本是2.1.3.1,编译器是gcc 4.7.2,使用的库:-lpng15 -lz -lm -lstdc ++ -lmgl -lmgl-qt

编译错误:

file.c: In function ‘sample’:
file.c:5:7: error: expected identifier or ‘(’ before ‘__extension__’
file.c: In function ‘main’:
file.c:16:6: warning: assignment makes pointer from integer without a cast [enabled by default]

我不知道我在这里缺少什么,你能帮帮我吗?

提前感谢!!

1 个答案:

答案 0 :(得分:0)

您的问题:I很可能是虚构单位的宏(如here所述)。

使用不同的变量名称(通常避免使用全大写变量名称。)