变量是个盒子

声明 = 申请一个盒子,赋值 = 把东西放进去。

GESPCSP-J

◎学完你会

1动手开盒子

按顺序点下面的按钮,看右边内存里发生了什么。注意每一步代码高亮到哪一行。

int a; // 声明:申请一个盒子 a = 5; // 赋值:把 5 放进去 a = 10; // 再赋值:旧的 5 被丢掉 int b = a; // 新盒子,装一份 a 的复印件
?
a
点左边按钮开始。

2关键命令

写法含义
int a;申请一个叫 a 的盒子,里面现在是未知垃圾值
int a = 5;声明并直接放进 5(推荐写法)
a = 10;把 10 放进 a,原来的 5 没了
int b = a;新开盒子 b,装一份 a 当前的值(互不影响)
最大的坑:只声明不赋值就去用它。int a; cout << a; 输出的是一个随机垃圾数——不同电脑还不一样,比赛里这是 WA 的隐形炸弹。养成习惯:int a = 0; 顺手初始化。

3起名字的规矩

变量名只能用字母、数字、下划线,不能数字开头,区分大小写。

✅ 好名字:sum、studentScore、n  ❌ 坏名字:1a(数字开头)、a b(有空格)、int(关键字)。

?跨学科:内存里的"格子",和现实里的储物柜是一回事

你往 int a 里存 5,本质是内存某排格子中的一个被贴上标签 a、放进 5。这和仓库货位、图书馆书架格、快递柜一模一样: 先有固定的格子,再贴唯一的标签,最后放内容。

标签的规矩也和现实相通——名字不能重复、不能乱起(避开关键字、不能数字开头),否则别人找不着、你自己也乱。 好的变量名就像货架上写得清清楚楚的仓位标签:可读性不是给别人看的,是给三个月后的自己看的。

✎练一练

下面哪个是合法变量名?
A 数字开头;B 有减号;D 是关键字。
int a = 3; int b = a; a = 7; cout << a << " " << b;
答案:7 3。b 装的是赋值那一刻 a 的复印件,后来 a 变 7 不影响 b。