跳动探索网

💻C++ sizeof() 和一道面试题 🤔

导读 在C++编程中,`sizeof()` 是一个非常实用的操作符,用来获取数据类型或变量所占内存大小(以字节为单位)。它不仅帮助开发者优化代码性能...

在C++编程中,`sizeof()` 是一个非常实用的操作符,用来获取数据类型或变量所占内存大小(以字节为单位)。它不仅帮助开发者优化代码性能,还常用于面试题考察基础知识。有一次,我遇到了这样一道题目:

问题:

```cpp

int main() {

char c = 'A';

int i = 10;

double d = 3.14;

printf("%d, %d, %d", sizeof(c), sizeof(i), sizeof(d));

return 0;

}

```

输出结果是什么?

答案显而易见:`1, 4, 8`。这是因为不同平台下,`char` 占 1 字节,`int` 占 4 字节,`double` 占 8 字节。但这个题目也让我思考到,`sizeof()` 的作用不仅仅是计算大小,还能揭示底层数据结构设计的细节。

💡 小贴士:

- `sizeof()` 返回的是类型大小,与变量值无关。

- 不同编译器可能对数据对齐方式有调整,导致大小略有差异。

掌握 `sizeof()` 的用法,不仅能让你更熟悉内存管理,也能轻松应对类似面试题!💪