Intel和微软同时出现的C语言面试题 {P'TtlEp
#pragma pack(8) R7'a/
3&*_5<t\X
struct s1{ "YIrqk
short a; \;"$Z9W
long b; Bvbv~7g(
}; 'EsN{.l?
&V.ps1
struct s2{ F_8<
tA6
char c; .}KY*y
s1 d; +(>!nsf
long long e; 45cMG~]p
}; f<!3vAh
fBgW0o.Bu
#pragma pack() ^T}6oUd
FmU>q)
问 8u+FWbOl]
1.sizeof(s2) = ? iTb k]$
2.s2的s1中的a后面空了几个字节接着是b? :\
%.x3T'
6U{&`8C
IfyyA
<@;Y.76~
如果您知道答案请在讨论中写出,以下是部份网友的答案,供参考: Rg/*)SKj
:H}a/ x*ur
网友rwxybh(行云)的答案: 6.]x@=Wm
内存布局是 1PwqWg-\\
1*** 11** ]<3$Sx_{y
1111 **** Ave{ `YD
1111 1111 C[cNwvz
NzRpI5\.
所以答案就是24和3 BIx Z4Ft
gHU/yi!T
下面是一个测试的程序,试一试就知道了,我用的是VC2005 XS!mtd<q
5o2W[<