什么是变量?
变量是程序可操作存储区的名称(标识符) 。
顾名思义,就是可以改变的量。
在C++中,变量就是存储数据的容器,不同类型的数据使用不同的变量进行存储。
比如,我们家里面有不同类型的盒子,有水果盒子、糖果盒子、茶叶盒子等,不同的盒子有不同的用途。
变量声明的语法格式
数据类型 变量名;
数据类型 变量名 = 初始值;
数据类型 变量名1, 变量名2, 变量名3;
例如:
int a; // 定义一个整型变量,即a这个变量只可以存储整型数据
当程序执行int a;
时,操作系统会在内存中随机选择一块空间,且名字是 a,此时这个空间所属于 a 这个变量,根据变量声明所在位置不同(比如main内部或者上面),a 的值为随机值或 0。
[info] 知识拓展
内存是一个线性的结构,程序在不运行的时候,比如一个 c++ 文件,并不会占用内存,当运行时, 才会将数据加载到内存中,程序结束,内存数据释放。
[info] 常用单位转换
- 1Byte = 8bit
- 1KB = 1024Byte
- 1MB = 1024KB
- 1GB = 1024MB
- 1TB = 1024GB
int 类型变量占 4 个字节。
int a = 1;
cout << sizeof(a) << endl;
输出:
4
变量赋值
赋值号即 =,切记,这里是赋值,表示将 = 右边的值赋给 = 左边的变量,而并不是相等的意思。
int a;
a = 1;
a = 2;
a = 3; // 最终输出a的值为3,以最后一次的值为准。
int b = 2; // 声明变量同时直接赋值
获取变量地址:&
int a = 123;
cout << a << endl << &a << endl;
输出:
123
0x73fe4c
变量命名规范
首先,标识符命名要做到见名知意,比如游戏中有很多角色,每个角色名字我们都用 x、xx、xxx...,这样,程序会变得难以理解。
比如,用变量存储我方英雄生命值,被敌人子弹击中就减少 1,这个变量名可以用 life 存储,或者,用拼音 shengming 存储。
规则:由字母、数字和下划线组成的符号串。
[info]
数字不能开头 不能使用 C++ 关键字 区分大小写
复合运算符
int a = 1;
a += 1;
a *= 2;
cout << a << endl;
输出:
4
变量自增和自减
如果单独执行一行 i++ 或 ++i,都是自增 1,程序效果相同。
int i = 1, j = 3;
i++;
cout << i << endl;
++i;
cout << i << endl;
输出:
2
3
x = i++
,将 i 的值先赋给 x,然后 i 再自增,x = ++i
,将 i 的值先自增,然后再赋给 x。
int i = 1, j = 3;
int x = i++;
cout << x << " " << i << endl;
x = ++i;
cout << x << " " << i << endl;
输出:
1 2
3 3
cin输入数据
算法:计算的方法
- 有输入:0 个或多个输入
- 有输出:1 个或多个输出
- 有穷性:必须在有限个步骤后终止
- 可行性:每一步操作都是可以执行的
- 确定性:每个步骤都有确定的含义
cin 可以让我们和计算机进行交互,我们可以向计算机输入数据,经由程序对数据进行处理,然后输出结果。
cin 读取数据时,数据之间可以通过空格或换行进行分隔。
常量
在编程中,常量是指在程序执行过程中其值不会发生变化的标识符。
常量与变量相对,变量的值可以在程序执行过程中被改变,而常量的值是固定的、不可修改的。
定义常量:
const 类型名 常量名 = 常量值; // 常量在定义同时必须进行初始化。
#define 常量名 常量值
使用符号常量名的好处:
1.增加了程序的可读性。比如大家见到了 PI 就知道它代表的是圆周率,定义符号常量名时尽量做到见名知意。
2.我们的程序中只要改动了 PI 的值程序中所有 PI 的值都会得到改变。
定义常量名时,通用习惯把常量名都写成大写!
const double PI = 3.1415926;
#define PI 3.1415926