2

我已经参加了一门介绍性编程课程,但在修复本应是相对简单的代码时遇到了麻烦。我不断收到一元“*”错误的无效类型参数。

#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; 
}

有人可以解释一下,以及如何解决吗?

4

2 回答 2

10
#define PI 3.14159; 
                  ^

去掉分号。保留它,代码将扩展为:

area = 3.14159; * r * r;
于 2013-09-03T21:54:45.367 回答
2

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

于 2013-09-03T21:55:25.137 回答