數據結構對齊

數據結構對齊是程式編譯後資料在記憶體內的佈局與使用方式 。 包括三方面內容 ： 數據對齊 、 數據結構填充 （ padding ） 與包入 （ packing ） 。 現代計算機CPU一般是以32位元或64位元大小作地址對齊 ， 以32位元架構的計算機舉例, 每次以連續的4位元組爲一個區間, 第一個位元組的位址位在每次CPU抓取資料大小的邊界上, 除此之外, 如果要訪問的變量沒有對齊 ， 可能會觸發總線錯誤 。 當資料小於計算機的字 （ word ） 尺寸 ， 可能把幾個資料放在一個字中 ， 稱爲包入 （ packing ） 。 許多編程語言自動處理數據結構對齊 。 Ada語言 ， PL / I, Pascal, 某些C語言與C + + 實現, D語言, Rust, 與彙編語言允許特別控制對齊的方式 。