1. 數(shù)組成員對(duì)齊規(guī)則
第一個(gè)數(shù)組成員應(yīng)該放在offset為0的地方,以后每個(gè)數(shù)組成員應(yīng)該放在offset為min(當(dāng)前成員的大小,#pargama pack(n))整數(shù)倍的地方開(kāi)始(比如int在32位機(jī)器為4字節(jié),#pargama pack(2),那么從2的倍數(shù)地方開(kāi)始存儲(chǔ))。
2. 結(jié)構(gòu)體總的大小
也就是sizeof的結(jié)果,必須是min(結(jié)構(gòu)體內(nèi)部最大成員,#pargama pack(n))的整數(shù)倍,不足要補(bǔ)齊。
3. 結(jié)構(gòu)體做為成員的對(duì)齊規(guī)則
如果一個(gè)結(jié)構(gòu)體B里嵌套另一個(gè)結(jié)構(gòu)體A,還是以最大成員類(lèi)型的大小對(duì)齊,但是結(jié)構(gòu)體A的起點(diǎn)為A內(nèi)部最大成員的整數(shù)倍的地方。(struct B里存有struct A,A里有char,int,double等成員,那A應(yīng)該從8的整數(shù)倍開(kāi)始存儲(chǔ)。),結(jié)構(gòu)體A中的成員的對(duì)齊規(guī)則仍滿(mǎn)足原則1、原則2。
更多關(guān)于物聯(lián)網(wǎng)培訓(xùn)的問(wèn)題,歡迎咨詢(xún)千鋒教育在線名師。千鋒教育擁有多年IT培訓(xùn)服務(wù)經(jīng)驗(yàn),采用全程面授高品質(zhì)、高體驗(yàn)培養(yǎng)模式,擁有國(guó)內(nèi)一體化教學(xué)管理及學(xué)員服務(wù),助力更多學(xué)員實(shí)現(xiàn)高薪夢(mèng)想。