sizeof

使用规则

形式:sizeof(类型)或  sizeof 表达式  

#include <stdio.h>
int main ()
{
    int a = 10;
    printf ("%zd/n",sizeof (int));  //4
    printf ("%zd/n",sizeof (a));    //4
    printf ("%zd/n",sizeof a);      //4   
    printf ("%zd/n",sizeof (3.14)); //8,因为3.14被编译器识别为double类型
    return 0;
}

sizeof 返回某种数据类型或某个值占⽤的字节数量,它的参数可以是数据类型的关键字,也可以是
变量名或某个具体的值。sizeof 可以计算内置的类型、数组、自定义类型的大小。

返回类型

sizeof 运算符的返回值,C 语言只规定是无符号整数,并没有规定具体的类型,而是留给系统决定。为解决这个问题,C 语言创造了⼀个类型别名 size_t ,用来统一表示sizeof 的返回值类型。该别名定义在 stddef.h 头⽂件(引⼊ stdio.h 时会⾃动引⼊),对应当前系统的 sizeof的返回值类型,可能是 unsigned int ,也可能是 unsigned long 。

C 语⾔还提供了⼀个常量 SIZE_MAX ,表⽰ size_t 可以表⽰的最⼤整数。
所以, size_t 能够表⽰的整数范围为 [0, SIZE_MAX] 。printf() 有专⻔的占位符 %zd 或 %zu ,⽤来处理 size_t 类型的值。

  • 7
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值