C 语言数据类型本质 ( sizeof 函数 | 数据类型大小 )
Posted 韩曙亮
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C 语言数据类型本质 ( sizeof 函数 | 数据类型大小 )相关的知识,希望对你有一定的参考价值。
一、sizeof 函数
sizeof()
函数可以计算 数据类型 的大小 ;
sizeof (类型说明符/表达式)
可以向函数中传递
- 数据类型
- 变量
- 表达式
作为参数 , 如果传入变量 , 会计算变量对应的数据类型对应的内存大小 , 如果传入表达式 , 会计算表达式计算结果的数据类型对应的大小 ;
一般情况下都传入数据类型 ;
二、数据类型大小
int a;
int array[10];
使用 sizeof()
函数 计算 数据类型大小 ;
上述 sizeif(a)
的值为
4
4
4 , sizeof(array)
的值是
40
40
40 ;
a
表达式类型是 int
, 该类型占据
4
4
4 字节的内存空间 ;
array
表达式类型是 int[10]
数组类型 , 该类型占据
40
40
40 字节的内存空间 ;
C 语言编译器 解析到 int array[10];
代码时 , 就会给 array
变量分配
40
40
40 字节大小的内存空间 ;
C 语言编译器 解析到 int a;
代码时 , 就会给 a
变量分配
4
4
4 字节大小的内存空间 ;
三、代码示例
代码示例 :
#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;
以上是关于C 语言数据类型本质 ( sizeof 函数 | 数据类型大小 )的主要内容,如果未能解决你的问题,请参考以下文章