zoukankan      html  css  js  c++  java
  • C++中数据对齐

    大体看了看数据对齐,不知道是否正确,总结如下:

    struct A

    {

      char name;

      double dHeight;

         int age;

    };

    sizeof(A) = (1+7+8+4+4) = 24; 

    这是编译器默认下的对齐方式,struct和class一致。

    如果人工添加代码设置对齐方式,如下

    #pargma pack (4)

    struct A

    {

      char name;

      double dHeight;

         int age;

    };

    sizeof(A) = 1+3+8+4 = 16

    首先#pargma pck (n) ,n为对齐数,分为如下情况:1. 如果n大于等于变量字节数,则按照默认对齐 2. 如果n小于该变量的类型所占用的字节数,那么偏移量为n的倍数。

  • 相关阅读:
    CodeForces 514B
    CodeForces 514A
    UVa 818
    HDU 1003
    UVa百题总结
    UVa 11526
    UVa 12412
    UVa 211
    UVa 1587
    UVa 225 – Golygons [DFS+剪枝]
  • 原文地址:https://www.cnblogs.com/sdnyzhl/p/4427419.html
Copyright © 2011-2022 走看看