const和符号常量define的区别
- 符号常量通俗来讲就是“替换”,即用一个标识符来替换常量,因此又称作“宏定义”。其标准格式如下:
#define 标识符 常量
例如把圆周率pi定义为3.14,注意末尾不加分号
#define pi 3.14
于是在程序中使用pi的地方都会被替换成3.14,下面这段代码用来计算圆的面积
#include<cstdio>
#define pi 3.14
int main()
{
double r = 3;
printf("%.2f\n",pi*r*r);
return 0;
}
输出结果:
28.26
- 另一种定义方法是const,其标准格式如下:
const 数据类型 变量名 = 常量;
仍然使用pi来举例:
const int pi = 3.14;
下面用一个计算圆的面积的例子来演示const的使用方法:
#include<cstdio>
const double pi = 3.14;
int main()
{
double r = 3;
printf("%.2f\n",pi*r*r);
return 0;
}
输出结果:
28.26
这两种方法都可以采用,一般推荐使用const
- define除了可以定义常量之外,还可以用来
定义语句
,其格式如下:
#define 标识符 语句常量
例如可以定义一个加法的简单运算:
#define ADD(a,b) ((a) + (b))
这样就可以直接使用ADD(a,b) 来计算 a+b:
#include<cstdio>
#define ADD(a,b) ((a) + (b))
int main()
{
int num1 = 3;
int num2 = 4;
printf("%d",ADD(num1,num2));
return 0;
}
输出结果:
7
欢迎与我交流~