一元'*'的无效类型参数

时间:2013-09-03 21:53:47

标签: c

我进入一个介绍编程课一周,而我在修复应该是一个相对简单的代码时遇到了麻烦。我一直得到一个'*'错误的无效类型参数。

#include <stdio.h>
#define PI 3.14159; 
int main()
{
   float r;
   float area;
   scanf("%f", &r);
   area = PI * r * r;
   printf("Area is %f", area);
   return 0; 
}

有人可以解释一下,以及如何解决这个问题?

2 个答案:

答案 0 :(得分:10)

#define PI 3.14159; 
                  ^

删掉分号。离开后,代码将扩展为:

area = 3.14159; * r * r;

答案 1 :(得分:2)

您必须删除宏;定义中的额外PI。它不需要宏,在你的情况下会在扩展后导致语法错误。