Sizeof关键字
c语言提供了sizeof关键字,可以用来获取数据类型或变量的字节容量。例如,char类型占用1个字节的容量,double类型变量占用8个字节的容量。该关键字的使用格式如下:
Sizeof(数据类型名称);
Sizeof(变量名);
测试代码如下:
深入学习,可以交个朋友,工人人人:魏凯峰linux编程学校
程序运行结果如下:
如您所见,sizeof(char)返回char类型定义变量时占用的内存字节数。Zeof (a)返回变量a占用的内存字节数。
sizeof关键字可以获取C语言中变量的数组、结构、指针等合法数据类型和字节容量。
Sizeof关键字来获取数组容量
假设有一个一维数组,定义如下:
int array[8];
那么,这个数组[]占用了多少字节呢?我们可以这样想:
(1) array[]数组有8个元素;
(2)数组的每个元素都是int类型,因为int类型占用4个字节;所以数组[]占用了8 * 4 = 32字节的空。
测试示例如下:
深入学习,可以交个朋友,工人人人:魏凯峰linux编程学校
程序运行结果如下:
可以看到,通过sizeof(array)获得数组array的容量,就是获得数组占用的内存字节数。
然后,我们可以通过sizeof关键字得到数组占用的内存字节数。如果我们知道数组元素的类型,我们就可以知道数组的长度。计算过程如下:
(1) sizeof(数组元素类型);获取数组中某个元素占用的字节数;假设x;
(2) sizeof(数组);获取数组占用的字节数;假设y;
那么,数组的长度就是数组中元素的个数。假设num,则有NUM = y/x;测试代码如下:
深入学习,可以交个朋友,工人人人:魏凯峰linux编程学校
程序运行结果如下:
可以看到,计算出来的num变量是数组array的长度。是包含的元素数。
本文来自牛奶煮萝莉投稿,不代表舒华文档立场,如若转载,请注明出处:https://www.chinashuhua.cn/24/493757.html