工作生活,一起抓^_^

字节对齐-摘录

上一篇 / 下一篇  2007-05-14 21:58:05 / 个人分类:工作

编译器的字节对齐原则:

1.数据类型自身对齐值;(char:1;short:2;int,float,double:4)

2.结构体,类自身的对齐值;(其成员自身对齐值最大的那个)

3.指定对齐值;(#pragma pack(i)中i定义的值,默认4)

4.数据类型,结构体,类的有效对齐值。(自身对齐值和指定对齐值小的那个)

举例:

struct A()

{

    int a;    char b;    short c;

}//sizeof(struct A)=8

struct B()

{

    char b;    int a;    short c;

}//sizeof(struct B)=12

#pragma pack(2)

struct C()

{

    char b;    int a;    short c;

}//sizeof(struct C)=8

 

详细解释:

http://www.yuanma.org/data/2006/0723/article_1213.htm


TAG: 工作

 

评分:0

我来说两句

显示全部

:loveliness: :handshake :victory: :funk: :time: :kiss: :call: :hug: :lol :'( :Q :L ;P :$ :P :o :@ :D :( :)

日历

« 2020-04-12  
   1234
567891011
12131415161718
19202122232425
2627282930  

数据统计

  • 访问量: 6160
  • 日志数: 17
  • 建立时间: 2007-04-02
  • 更新时间: 2007-12-09

RSS订阅

Open Toolbar