2
這是一個問題,我的工作,但我只是想知道爲什麼偏移量是(小紅號)對齊在程序集中,每個對象如何獲得它的偏移量?
能有人爲什麼struct s1
向我解釋的方式,抵消從0->4->8
?據我所知,由於char
是1個字節,所以有3個字符。所以它是3個字節加1,以滿足對齊。但是爲什麼它從4到8,在union u1 b
? union
有4個字節嗎?爲什麼?
這是一個問題,我的工作,但我只是想知道爲什麼偏移量是(小紅號)對齊在程序集中,每個對象如何獲得它的偏移量?
能有人爲什麼struct s1
向我解釋的方式,抵消從0->4->8
?據我所知,由於char
是1個字節,所以有3個字符。所以它是3個字節加1,以滿足對齊。但是爲什麼它從4到8,在union u1 b
? union
有4個字節嗎?爲什麼?
該聯盟是4個字節,因爲這是最大的元素的大小,它包含,即指針(這必須是一個32位平臺)
非常感謝你傑森。 – PhoonOne