Re: [問題] struct alignment 的問題
看板C_and_CPP (C/C++)作者MasterChang (我愛ASM)時間16年前 (2009/05/14 02:06)推噓2(2推 0噓 4→)留言6則, 2人參與討論串2/2 (看更多)
※ 引述《yoco315 (眠月)》之銘言:
: 小紅帽 64 bit
: gcc 3.4
: struct A { struct B { struct C {
: int a ; double a ; float a ;
: int b ; double b ; float b ;
: int c ; float c ; float c ;
: } ; } ; } ;
: sizeof : 12 24 12
: 想不透為什麼 struct B 會是 24 阿~~~
: 不是應該 8 + 8 + 4 = 20 嗎 O_Q???
Try This One XD
#pragma pack(push) /* push current alignment to stack */
#pragma pack(4) /* set alignment to 4 byte boundary */
struct B
{
double a ;
double b ;
float c ;
};
#pragma pack(pop) /* restore original alignment from stack */
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.132.20.82
→
05/14 04:39, , 1F
05/14 04:39, 1F
推
05/14 05:22, , 2F
05/14 05:22, 2F
→
05/14 05:22, , 3F
05/14 05:22, 3F
→
05/14 05:22, , 4F
05/14 05:22, 4F
推
05/14 08:09, , 5F
05/14 08:09, 5F
→
05/14 08:11, , 6F
05/14 08:11, 6F
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 2 篇):
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章