zoukankan      html  css  js  c++  java
  • 在C语言中,double、long、unsigned、int、char类型数据所占字节数

    和机器字长及编译器有关系:

    所以,int,long int,short int的宽度都可能随编译器而异。但有几条铁定的原则(ANSI/ISO制订的):

    1 sizeof(short 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位编译器(看这里就行了,与16位机,64位机比较,粗体type为不同的,其余的都是相同)

    char :1个字节
    char*(即指针变量): 4个字节(32位的寻址空间是2^32, 即32个bit,也就是4个字节。同理64位编译器)(16位机,32位机,64位机各不相同)
    
    short int : 2个字节
    int: 4个字节(16位机是2B,32位&64位是4B)
    unsigned int : 4个字节(16位机是2B,32位&64位是4B)
    
    float: 4个字节
    double: 8个字节
    
    long: 4个字节(16位&32位是4B,64位是8B)
    long long: 8个字节
    unsigned long: 4个字节(16&32位是4B,64位是8B)

    64位编译器

    char :1个字节
    char*(即指针变量): 8个字节
    short int : 2个字节
    int: 4个字节
    unsigned int : 4个字节
    float: 4个字节
    double: 8个字节
    long: 8个字节
    long long: 8个字节
    unsigned long: 8个字节
  • 相关阅读:
    [noip2011d2t2]聪明的质检员 二分+前缀和优化
    [noip2016d2t2]蚯蚓
    KMP
    杨辉三角(二项式定理)&&组合数 【noip 2011/2016 d2t1】
    bzoj1615 [Usaco2008 Mar]The Loathesome Hay Baler麻烦的干草打包机
    [noip2015 pjt3]求和
    [周记]8.28~9.3
    [noip2011 d1t3] Mayan游戏
    react基础用法二(组件渲染)
    react基础用法一(在标签中渲染元素)
  • 原文地址:https://www.cnblogs.com/try-again/p/4975642.html
Copyright © 2011-2022 走看看