【sizeof()的使用方式】简洁明了初识C语言
sizeof()介绍
sizeof其实仅仅只是一个操作符,我们要注意它并不是一个函数,他就类似与常见的+、=、-......的操作符,并且sizeof是一个单目操作符。sizeof实际上是获取了数据在内存中所占用的存储空间,以字节为单位来计数。
sizeof()用于数据类型
我们在初学C语言时,就已经知道了sizeof可以计算各种数据类型的所占的存储空间。例如,回忆一下以下代码:
#include <stdio.h>
int main()
{printf("%d\n", sizeof(int));printf("%d\n", sizeof(char));printf("%d\n", sizeof(short));printf("%d\n", sizeof(long));printf("%d\n", sizeof(long long));printf("%d\n", sizeof(double));printf("%d\n", sizeof(float));printf("%d\n", sizeof(long double));return 0;
}
运行出来的结果为(不同的计算器运行的结果部分不同):
4
1
2
4
8
8
4
8
sizeof()用于变量
我们可以看一下下面的例子:
#include <stdio.h>
int main()
{int a = 5;int b = 10;int arr[] = { 1,2,3,4 };printf("%d\n", sizeof(a));printf("%d\n", sizeof(b));printf("%d\n", sizeof(arr));return 0;
}
运行的结果为:
4
4
16
sizeof()计算元素个数
用整个数组的sizeof去除以一个元素的sizeof。
数组的长度 = 数组所占的大小 / 单个数组元素所占的大小。
#include<stdio.h>
int main()
{int arr[] = {1,2,3,4,5,6};int len = sizeof(arr)/sizeof(arr[1]);printf("%d\n", len);return 0;
}
运行的结果为:
6