• 一个int类型究竟占多少个字节


    一个int占多少个字节?

    这个问题我们往往得到的答案是4.

    可是int究竟占多少个字节,却跟你的机器环境有关.

    As you can see, the typical data type sizes match the ILP32LL model, which is what most compilers adhere to on 32-bit platforms. The LP64 model is the de facto standard for compilers that generate code for 64-bit platforms.

    近期在一本有关代码审计的书上看到如上解释.这里非常好的解释了int究竟应该占多少个字节.

    并且从他的角度来看是编译器去适应平台.所以真正决定int占多少字节取决于你的device platforms.

    事实上不管哪种模型short和char不管哪种model下都保持一致.

    我们见得最多的就是ILP32LL模型.这样的模型下int和long已经pointer占4个字节 long long占8个字节.


    PS:这个表非常easy记,中间的数字表明你是64bit还是32bit的机器.前面的I表示int,L表示long,LL表示long long,P就表示pointer.

    位于数字前面的类型表示跟中间的bit数保持一致.举个样例:ILP32LL 就是ILP是32位,LL是64位.


  • 相关阅读:
    Distinct Substrings(spoj 694)
    Musical Theme
    Milk Patterns(poj 3261)
    Repeated Substrings(UVAlive 6869)
    喵星球上的点名(bzoj 2754)
    滑雪与时间胶囊(bzoj 2753)
    莫比乌斯函数之和(51nod 1244)
    欧拉函数之和(51nod 1239)
    数表(bzoj 3529)
    欧拉函数模板
  • 原文地址:https://www.cnblogs.com/blfshiye/p/4516930.html
Copyright © 2020-2023  润新知