讲师中心 微信公众号
AI工具推荐 视频效率加速

C++教程

浏览6733
更新时间2025-08-05

获取数组的大小

要获取数组的大小,您可以使用 sizeof() 运算符:

实例

int myNumbers[5] = {10, 20, 30, 40, 50};
cout << sizeof(myNumbers);

结果:

20
运行实例 »

点击 "运行实例" 按钮查看在线实例

为什么当数组包含 5 个元素时,结果显示为 20 而不是 5?

这是因为 sizeof() 运算符返回的是类型的字节大小。

从数据类型章节中您了解到,int 类型通常是 4 个字节,所以在上面的示例中,4 x 5(4 个字节 x 5 个元素)= 20 个字节。

要找出数组包含多少个元素,您必须将数组的大小除以它所包含的数据类型的大小:

实例

int myNumbers[5] = {10, 20, 30, 40, 50};
int getArrayLength = sizeof(myNumbers) / sizeof(int);
cout << getArrayLength;

结果:

5
运行实例 »

点击 "运行实例" 按钮查看在线实例

使用 sizeof() 遍历数组

在数组和循环章节中,我们在循环条件中写了数组的大小(i < 5)。这并不理想,因为它只适用于指定大小的数组。

然而,通过使用上例中的 sizeof() 方法,我们现在可以创建适用于任何大小的数组的循环,这更具可持续性。

而不是这样写:

int myNumbers[5] = {10, 20, 30, 40, 50};
for (int i = 0; i < 5; i++) {
  cout << myNumbers[i] << "\n";
}

最好这样写:

实例

int myNumbers[5] = {10, 20, 30, 40, 50};
for (int i = 0; i < sizeof(myNumbers) / sizeof(int); i++) {
  cout << myNumbers[i] << "\n";
}
运行实例 »

点击 "运行实例" 按钮查看在线实例

请注意,在 C++11(2011 年)版本中,您还可以使用 "for-each" 循环:

实例

int myNumbers[5] = {10, 20, 30, 40, 50};
for (int i : myNumbers) {
  cout << i << "\n";
}
运行实例 »

点击 "运行实例" 按钮查看在线实例

提示:了解遍历数组的不同方式是有好处的,因为您可能会在不同的程序中遇到它们。

精品课程

更多
前端入门_HTML5
前端入门_HTML5

共29课时 | 65.3万人学习

CSS视频教程-玉女心经版
CSS视频教程-玉女心经版

共25课时 | 41.5万人学习

JavaScript极速入门_玉女心经系列
JavaScript极速入门_玉女心经系列

共43课时 | 77.1万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn