#define与const常量

const类型写法

const int a=5//用const声明的常变量,值始终为5
const float b=3*1.75;

关于const,#define需注意

  • const 声明常量时,定义常量使必须同时初始化,其值不可更改
    wrong
 con int a;
 a=5  //wrong
  • #deine 定义的宏替换常量不同,#define定义的符号常量不占内存空间,而const声明的常量在内存中有相应大小的空间,具有变量的特征,可以用sizeof测量长度,因此为常变量

const常量用法

#include <iostream>
using namespace std;
int main(void)
{
	int a=10;
	const int T1=a+a;
	const int T2=T1-T1;
	cout<<"T2 is"<<T2<<endl;
}

运行结果为0

define常量用法

#include
using namespace std;
int main(void)
{
int a=10;
#define T1 a+a
#define T2 T1-T2
cout<<“T2 is”<<T2<<endl;
}
结果为20

区别

  • 对使用#define定义的符号常量来说,只是单纯的字符串替换,因此T2替换为a+a-a+a,结果为20
  • 对于常变量,T1和T2都占有各自的内存空间,即都可以保留一个常量值,其中T1的值指定为20,同理T2的值指定为0
原创文章 7 获赞 10 访问量 267

猜你喜欢

转载自blog.csdn.net/lpblog/article/details/105899754