字節對齊

結構體變量的首地址爲最寬基本類型成員大小的整數倍數。        
各成員變量存放的起始地址相對於結構體變量的起始地址的偏移量必須爲該變量類型所佔用的字節數的倍數        
結構體總大小爲結構體中最寬數據類型成員大小的整數倍。        
#pragma pack(n)來設定變量以n字節對齊方式。n字節對齊就是說變量存放的起始地址的偏移量有兩種情況:        
第一、如果n大於等於該變量所佔用的字節數,那麼偏移量必須滿足默認的對齊方式,        
第二、如果n小於該變量的類型所佔用的字節數,那麼偏移量爲n的倍數,不用滿足默認的對齊方式。        
    結構的總大小也有個約束條件,分下面兩種情況:    
    如果n大於所有成員變量類型所佔用的字節數,那麼結構的總大小必須爲佔用空間最大的變量佔用的空間數的倍數,否則必須爲n的倍數。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章