1、常量
1、宏常量
- 语法:#define 宏常量名 常量值
#define DAY 7
cout << DAY << endl;
- 注意:通常位于文件的上方定义,表示一个常量
2、const修饰的变量
- 语法:const 数据类型 变量名=常量值;
const int a = 10;
cout << a<<endl;
- 注意:通常在变量前加const,修饰该变量为常量,不可更改
2、变量
1. 变量的定义:计算机语言中能储存计算结果或能表示值的抽象概念
2.变量的命名规则
- 可以是数字、字母、下划线
- 变量名的第一个字符不能是数字
int f;
int _;
int 2;//报错
int _num;
int first_num1;
3. 变量的语法:数据类型 变量名=初始值;
注意:定义变量时,最好对于变量赋予初值,否则可能会因为系统默认数据,产生一些严重的错误
- 产生的结果异常
3double a; cout << a;
.
3.常见的变量初值
- int类型:0
- bool类型:true
4. 变量的作用:给一段指定的内存空间起名,方便操作这段内存
3、常量与变量的区别
1、 数值是否可以改变
- 变量的值可以改变
- 常量的值不可以改变
2、是否需要关键字
- 变量一般不需要关键字
- 常量需要关键字const
3、存储的位置
- 例子程序
int a = 0;//全局初始化区
int* p1;//全局未初始化区
int b;//栈区
char ch[] = "abc";//栈区
char* p2;//栈区
//char* p3 = "123456";会报错
//解决无法从const char[7]转换为char*
char* p3 = (char*)"123456";//*p3放在栈区,123456\0放在常量区
static int c = 0;//全局(静态)初始化区
p1 =new int (10);//堆区
p2 = new char(20);//堆区
//123456\0放在常量区,编译器可能会将它与p3所指向的123456优化成一个地方
strcpy((char*)p1, "123456");
strcpy(p2, "hello");