在 C 语言中,int a[10] = {3, 44, 7, 65}; 这段代码定义了一个名为 a 的整数数组,它有 10 个元素。使用 int b = sizeof(a); 之后,b 的值为 40。

sizeof(a) 使用 sizeof 运算符获取数组 a 所占用的总字节数。数组 a 有 10 个元素,每个元素都是 int 类型,在大多数系统中,int 类型占 4 个字节,所以 a 占用的总字节数为 10 * 4 = 40。

数组 a 方括号中的数字 10 表示数组 a 的容量,即它最多可以容纳的元素个数。即使只初始化了部分元素,剩下的元素也会被默认填充为 0,并占用内存空间。

即使只初始化了两个元素,b 的值仍然是 40,因为数组的容量没有改变。

总结:

  • sizeof 运算符返回的是数组所占用的总字节数,而不是元素个数。
  • 数组方括号中的数字表示数组的容量,即最大的元素个数。
  • 未初始化的元素也会占用内存空间,并被默认填充为 0。
C语言中数组大小:sizeof(a) 的计算方法

原文地址: http://www.cveoy.top/t/topic/hHCx 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录