文章目录
一、sizeof 函数
二、数据类型大小
三、代码示例
一、sizeof 函数
sizeof() 函数可以计算 数据类型 的大小 ;
sizeof (类型说明符/表达式)
可以向函数中传递
数据类型
变量
表达式
作为参数 , 如果传入变量 , 会计算变量对应的数据类型对应的内存大小 , 如果传入表达式 , 会计算表达式计算结果的数据类型对应的大小 ;
一般情况下都传入数据类型 ;
二、数据类型大小
int a; int array[10];
使用 sizeof() 函数 计算 数据类型大小 ;
上述 sizeif(a) 的值为 4 44 , sizeof(array) 的值是 40 4040 ;
a 表达式类型是 int , 该类型占据 4 44 字节的内存空间 ;
array 表达式类型是 int[10] 数组类型 , 该类型占据 40 4040 字节的内存空间 ;
C 语言编译器 解析到 int array[10]; 代码时 , 就会给 array 变量分配 40 4040 字节大小的内存空间 ;
C 语言编译器 解析到 int a; 代码时 , 就会给 a 变量分配 4 44 字节大小的内存空间 ;
三、代码示例
代码示例 :
#include <stdio.h> /* * 函数入口 */ int main(int argc, char **args) { // 编译器分配 4 字节内存 int a; // 编译器分配 40 字节内存 int array[10]; // sizeof(a)=4, sizeof(array)=40 printf("sizeof(a)=%d, sizeof(array)=%d\n", sizeof(a), sizeof(array)); return 0; }