#在c++编译中,我想用 PI * r * r 表示一个圆的面积,可报错 “ '*'的操作数必须是指针 ” 正确代码如下
下面展示 c++代码。
// 计算圆的周长和面积 #pragma warning(disable:4996) //scanf返回值被忽略 #include<stdio.h> int main() { #define PI 3.14 float r, s, c; printf("请输入圆的半径:"); scanf("%f", &r); s = PI * r * r; c = 2 * PI * r; printf("半径为%f的圆周长为%f,面积为%f", r, c, s); return 0;将代码 #define PI 3.14 ; 后的引号去掉,变成 #define PI 3.14
宏定义一般不要把分号加上,宏定义不是语句,是预处理指令,故结尾不加分号。 如果不小心添加了分号,虽然有时该宏定义没问题,但在宏替换时,可能导致 C 语法错误,或得不到预期结果。
http://c.biancheng.net/view/287.html C语言中文网
https://baike.baidu.com/item/%E5%AE%8F%E5%AE%9A%E4%B9%89 百度百科
https://www.runoob.com/w3cnote/macro-definition.html 菜鸟教程