#include <iostream>
using namespace std;
//#define在编译预处理阶段处理
//const常量是由编译器处理的,提供类型检查和作用域检查
//const常量存储在数据段,define常量存储在代码段
#define b 20
int main01()
{
/*int a=10;
int b=20;
int array[a + b];*/ //linux内核里是成立的,原因是编译linux内核的gcc编译器支持
//c和c++均不支持这种现象
const int a=10;
//const int b=20;
int array[a + b];
system("pause");
return 0;
}
//const常量是由编译器处理的,提供类型检查和作用域检查
void fun1()
{
#define c 10
const int d = 20;
//# undef c 卸载宏
}
void fun2()
{
cout << "c=" << c << endl; //可以调用
//cout << "d=" << d << endl; //无法调用
}
int main()
{
fun2();
system("pause");
return 0;
}
C++:const与define的异同
最新推荐文章于 2023-08-21 21:00:13 发布