#include <iostream>
using namespace std;
// C++中的const修饰的是一个常量:
// 1、const常量正常情况下内存不会为其分配空间,而是存在符号表中
// 2、使用的时候去符号表中取值你
// 3、如果对 const 常量进行取地址操作,则编译器会为其分配一块空间,但是 它本身并不会使用
int main1()
{
const int a = 10; // 不能通过变量名 a 修改 a 的值
int *pa = (int *)&a;
*pa = 20;
printf ("&a = %p, pa = %p\n",&a, pa);
printf ("a = %d, *pa = %d\n",a, *pa);
int arr[a];
return 0;
}
// 4、建议用 const 替换 宏常量
// const 和 define 的区别:
// 1、define 是预处理的处理,做的工作是累心完全替换,在程序中会有多个备份
// const 是编译的时候处理,会进行变量的类型和作用域检测,只在符号表中有一个备份
// const 和 define 相同点:定义常量
#define SIZE 10
const int size = 10;
int main()
{
int arr[a];
return 0;
}
const修饰
最新推荐文章于 2022-10-22 21:29:47 发布