在 C 语言 中,没有获取 数组 长度的 函数,要数组数组的长度,我们可以使用 sizeof 首先获取整个数组的占用字节大小,再次使用 sizeof 获取单个元素的内存大小,最后相除得到数组长度。
int count = sizeof(arr) / sizeof(arr[0]);
参数 | 描述 |
---|---|
arr | 数组名。 |
count | 返回的数组的长度。 |
其中,arr 是我们需要获取的长度的数组名,count 是我们计算得到的长度。我们首先,使用了 sizeof 获取了整个数组占用的内存大小,再次使用 sizeof 获取了数组的第一个元素占用的内存大小。
我们使用数组的内存大小除以数组的单个元素占用的内存大小,就可以得出数组的长度了。
获取数组的长度
#include <stdio.h>
int main()
{
printf("嗨客网(www.haicoder.net)\n\n");
// 数组长度
int arr[5];
int count1 = sizeof(arr) / sizeof(arr[0]);
char arr2[10] = {'a'};
int count2 = sizeof(arr2) / sizeof(arr2[0]);
printf("Count1 = %d, Count2 = %d\n", count1, count2);
return 0;
}
程序运行后,控制台输出如下:
我们首先,创建了一个有五个元素的数组 arr,每个数组的元素都是 int 类型的。接着,我们再次创建了一个有十个元素的数组 arr2,每个元素都是 char 类型的。
最后,我们首先使用了 sizeof 获取了整个数组占用的内存大小,再次使用 sizeof 获取了数组的第一个元素占用的内存大小。我们使用数组的内存大小除以数组的单个元素占用的内存大小,就可以得出数组的长度了。
在 C 语言中,没有获取数组长度的函数,要数组数组的长度,我们可以使用 sizeof 首先获取整个数组的占用字节大小,再次使用 sizeof 获取单个元素的内存大小,最后相除得到数组长度。