C-double、long、unsigned、int、char类型数据所占字节数

    在 C 语言中 double, long, unsigned, int, char 类型数据所占字节数和机器字长及编译器有关系, 所以, int, long int, short int 的宽度都可能随编译器而异.

    但有几条铁定的原则 (ANSI/ISO 制定的): 

    1. sizeof(shot int) <= sizeof(int)

    2. sizeof(int) <= sizeof(long int)

    3. short int 至少为 16 位 (2字节)

    4. long int 至少应为 32 位

    unsigned 是无符号的意思.

例如:

16 位编译器

char: 1 字节    char*(即指针变量): 2 字节    short int: 2 字节    int: 2 字节    unsigned int: 2 字节    float: 4 字节    double: 8 字节    

long: 4 字节    long long: 8 字节    unsigned long: 4 字节

32 位编译器

char: 1 字节    char*(即指针变量): 4 字节(32 位的寻址空间是 2^32, 即 32 个 bit, 也就是 4 字节. 同理 64 位编译器)    

short int: 2 字节    int: 4 字节    unsigned int: 4 字节    float: 4 字节    double: 8 字节    

long: 4 字节    long long: 8 字节    unsigned long: 4 字节

64 位编译器

char: 1 字节    char*(即指针变量): 8 字节    short int: 2 字节    int: 4 字节    unsigned int: 4 字节    float: 4 字节    double: 8 字节    

long: 4 字节    long long: 8 字节    unsigned long: 8 字节

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值