亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

共用體所占內存大小問題

#include

union data{ ? ?int a; ? ?char b; ? ?char c[5]; ? ?int d; }; int main() { ? ?union data dd = {10}; ? ?dd.b = 'a'; ? ?printf("___SIZE____ %lu\n", sizeof(dd)); } //這里我輸出共用體的大小是8而不是5 是不是共用體內存大小也是要對齊的?

正在回答

2 回答

c++有一個對齊機制,申請的內存應該是某一數的整數倍,在這里是4,所以只能是8

1 回復 有任何疑惑可以回復我~
#1

一起沉默2626 提問者

非常感謝!
2017-05-08 回復 有任何疑惑可以回復我~

是,這點和結構體類似。

1 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消
Linux C語言結構體
  • 參與學習       118466    人
  • 解答問題       166    個

C語言的深入,幫助小伙伴們進一步的理解C語言,趕緊看過來

進入課程

共用體所占內存大小問題

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號