跳到正文
信奥逐课

第 006 课

什么是内存

🟢 入门 约 5 分钟

一句话理解

内存是计算机放数据的地方,变量就占其中一小块。

为什么要学

数组很大、递归很深时,会占很多内存。后面会遇到 MLE。

讲解

可以把内存想成一排带编号的格子。变量占用其中若干格。

int 通常占 4 个字节,long long 通常占 8 个字节。开 int a[1000000] 大约是 4MB 量级。

程序结束,这些格子就还给系统。局部变量尤其短命:函数结束就没了。

例子

int a = 10;          // 占一块放整数的格子
long long b = 10;    // 通常比 int 更宽
int c[5];            // 连续 5 个 int 格子

单个整数占得很少;真正容易爆内存的是大数组、很多层递归、以及复制了巨大的容器。

常见错误

练习 做完再看下一课

下面谁通常最占内存?

在线练习 C++ 在浏览器里编译,代码不会上传

Ctrl / ⌘ + Enter 运行 · Tab 缩进

输出
 

进度保存在本机浏览器里。

左右方向键也可翻课