sizeof是C语言中的关键字,可以计算类型和变量的大小,也可以计算数组中元素的大小。
int main()
{
int arr[10] = { 1,2,3,4,5,6,7,8,9,10 };
int arr_size1 = sizeof(arr);
int arr_size2 = sizeof(arr[1]);
printf("arr_size1 = %d\n", arr_size1);
printf("arr_size2 = %d\n", arr_size2);
return 0;
}
运行结果:
可以看到arr_size1时整个数组元素的大小因为数组元素的类型是int,并且有十个数据所以整个数组的大小是40,而arr[1]使用了[]操作符得到的是数组下标为1的数据,他的类型是int大小是四个字节。
接下来我们就可以计算数组中的元素个数:
int main()
{
int arr[10] = { 1,2,3,4,5,6,7,8,9,10 };
int arr_size1 = sizeof(arr);
int arr_size2 = sizeof(arr[1]);
printf("arr_size1 = %d\n", arr_size1);
printf("arr_size2 = %d\n", arr_size2);
int num = sizeof(arr) / sizeof(arr[1]);
printf("数组中元素的个数是 :%d",num);
return 0;
}
运行结果:
这里的结果是10,表示数组中有十个元素。