久久ER99热精品一区二区-久久精品99国产精品日本-久久精品免费一区二区三区-久久综合九色综合欧美狠狠

新聞中心

EEPW首頁 > 嵌入式系統 > 設計應用 > 關于結構體數據存儲的對齊問題

關于結構體數據存儲的對齊問題

作者: 時間:2016-12-01 來源:網絡 收藏
在linux下的結果:
在windows下的結果:
在linux下的存儲形式,其中黑色包圍起來的才是我們的存儲空間白色的部分是保留區域,通過下面的兩幅圖就可以知道其中的一些道理,知道其中所謂的完成一樣的功能,保證存儲空間最小:
在windows下的存儲形式,其中黑色包圍起來的才是我們的存儲空間白色的部分是保留區域:
從上面的幾個圖片可以知道在C語言中的內存分布是比較復雜的。一定要注意存儲的對齊形式,這樣才能了解其中的分布規律。當然了上面的形式都只是在小端處理器模式下的存儲形式,對于大端也有類似的情況,只是存儲的位置不一樣,但是內存的大小是相同的。
結構體的定義不能是隨便的,如果考慮好對齊關系能夠節省大量的存儲空間。實現效率和存儲空間的折中。雖然#pragmapack(n)等能夠改變其中的對齊方式,不過建議不要隨便改動,可能得不償失。

上一頁 1 2 下一頁

關鍵詞: 結構體數據存儲對齊問

評論


相關推薦

技術專區

關閉