gcc (GCC) 4.1.2 20070115 (prerelease) (SUSE Linux x86-64)
"&结构A" = 0x00007fffe23b0770 结构长度304 0x130
"&结构B" = 0x7fffe23b08a0 结构长度296 0x128
中间差了8个字节
"&char数组A[0]" = 0x00007fffe23b09d0 数组长度100 0x64
中间差了12个字节
"&结构C" = 0x7fffe23b0a40 结构长度64 0x41
中间差15个字节
"&结构D" = 0x00007fffe23b0a90 结构长度64 0x40
中间差4个字节
"&32位整型A" = 0x00007fffe23b0ad4
"&指针B" = 0x00007fffe23b0ad8 指针
"&指针C" = 0x00007fffe23b0738 指针
可见,结构/数组在16个字节边界处对齐了
"&结构A" = 0x00007fffe23b0770 结构长度304 0x130
"&结构B" = 0x7fffe23b08a0 结构长度296 0x128
中间差了8个字节
"&char数组A[0]" = 0x00007fffe23b09d0 数组长度100 0x64
中间差了12个字节
"&结构C" = 0x7fffe23b0a40 结构长度64 0x41
中间差15个字节
"&结构D" = 0x00007fffe23b0a90 结构长度64 0x40
中间差4个字节
"&32位整型A" = 0x00007fffe23b0ad4
"&指针B" = 0x00007fffe23b0ad8 指针
"&指针C" = 0x00007fffe23b0738 指针
可见,结构/数组在16个字节边界处对齐了