返回介绍

5.1.2 数组的大小

发布于 2025-04-11 22:32:56 字数 940 浏览 0 评论 0 收藏 0

数组在定义后,其大小就确定了。我们可以通过 sizeof 运算符来获得数组的大小:

int a[5];
printf("Size of the array: %u Bytes.\n", sizeof a);

首先定义了一个长度为 5 的 int 类型数组 a,然后使用 sizeof 运算符对数组 a 进行运算,也可以使用“sizeof(a)”的格式,并将运算的结果通过 printf 函数打印在窗口上,程序运行结果如下:

Size of the array: 20 Bytes.

数组的元素在内存中是连续、依次排列的,就像弹匣中的子弹一样,一个挨着一个,如图 5.1 所示。

数组 a 共有 5 个 int 类型的元素,每个元素大小为 4 字节,所以数组 a 的大小就是数组元素大小与数组元素个数的乘积,即 4×5 = 20 字节。

图 5.1 数组 a 的内存大小

同样地,若是知道了数组的大小,通过数组大小除以数组元素大小,可以得知数组元素的个数,例如:

printf("The number of array elements is %u.\n", sizeof a / sizeof(int));

由于数组 a 的元素都是 int 类型的,所以可以通过“sizeof(int)”获得数组元素的大小(int 是数据类型,所以 sizeof 后面的小括号不可省略)。将数组大小与数组元素大小相除,即可得到数组元素的个数。程序运行结果如下:

The number of array elements is 5.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。