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

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

結構體內存大小

55c81c270001aa1b04250094.jpg

55c81c2700017aae05000143.jpg

每個成員相對于結構體首地址的偏移是當前成員所占內存大小的整數倍,那么c的偏移量就是8;

內存大小=最后一個成員的偏移量(也就是8)+最后一個成員的大小(8)+末尾填充字節數(0)=16;

是這個樣子嗎?

正在回答

2 回答

int的字節數為4,char的字節數為 1,double的字節數為 8;

偏移量=5

最后一個成員的大小是8

填充字節數 =3(填充字節數=最后一個成員的最小整數倍數-偏移量;偏移量必須是最后一個成員的整數倍,不然就得填充字節,比如這里最后一個成員的大小是8,那么8的最小整數倍是8,所以8-3=5)

?內存大小=5+8+3=16

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

4+4+8

char后面要做字節對齊,空三個字節double開始

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

一葉知秋zxw 提問者

字節對齊是對齊前面那個?
2015-08-11 回復 有任何疑惑可以回復我~

舉報

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

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

進入課程

結構體內存大小

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

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

幫助反饋 APP下載

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

公眾號

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