• 【C语言】32位,64位机器sizeof区别


    float, double : 采用IEEE标准浮点数格式,格式固定 float 32bit, double 64bit

    int一般和CPU寄存器长度有关,不过也和编译器,汇编器有关

    由于C ,C++ 标准没有规定整数类型的固定长度。
    同一CPU不同操作系统和编译器,对于int 类型规定的长度是不同的
    于是为了区别这些不同,出现了数据模型这种东西。
    数据模型(LP32 ILP32 LP64 LLP64 ILP64 )
    TYPE               LP32  ILP32  LP64  ILP64  LLP64
    char                 8         8          8         8         8
    short               16       16        16       16       16
    int                  16       32        32        64      32
    long                32       32        64       64       32
    long long         64       64        64       64       64
    pointer            32       32        64       64       64  

      

    模型的名字就表明了相应数据类型的位数。LP32就表示long 和 pointer 是32位的其他的类推。

     windows下采用的是LLP64, Unix系列的采用的是LP64

    注意:char, short, long long在所有模型下的大小都相同

    指针在32位下为32bit, 在64位下为64bit

    来自:http://bbs.csdn.net/topics/390848520

  • 相关阅读:
    有序数组(类模板)
    BUUCTF-Web Comment
    BUUCTF-web NiZhuanSiWei
    2020数字中国创新大赛虎符网络安全赛道-pwn count
    BUUCTF-Web Easy Calc
    xctf-web fakebook
    xctf-web supersqli
    xctf-pwn pwn200
    xctf-pwn level3
    利用updatexml()报错注入mysql
  • 原文地址:https://www.cnblogs.com/dplearning/p/4722418.html
Copyright © 2020-2023  润新知