Professional Documents
Culture Documents
TranGiaHao - StructureAlignment
TranGiaHao - StructureAlignment
TranGiaHao - StructureAlignment
MSSV: 19521481
NT209.L21.ATCL
Trường Offset
Char a 0
Short b 4
Double c 8
Char d 16
Float e 20
Void *f 24
b. Tổng kích thước của structure?
a b 2 c d 3 e f 4
0 4 6 8 16 17 20 24 28 32
• Tổng kích thước: 32 bytes
• Số byte trống: 9 bytes
c. Sắp lai vị trí các trường để hạn chế tối thiểu không gian trống? Offset
của các trường và tổng kích thước sau khi sắp xếp lại?
struct {
double c;
char *a;
float e;
void *f;
short b;
char d;
} foo;
• Sắp xếp lại vị trí các trường để hạn chế tối thiểu không gian trống
c a e f b d 1
0 8 12 16 20 22 23 24
• Offset của các trường
Trường Offset
Double c 0
Char *a 8
float e 12
Void *f 16
Short b 20
Char d 22