1. 程式人生 > >C語言記憶體位元組對齊小結

C語言記憶體位元組對齊小結

首先說說為什麼要對齊。為了提高效率,計算機從記憶體中取資料是按照一個固定長度的。以32位機為例,它每次取32個位,也就是4個位元組(每位元組8個位,計算機基礎知識,別說不知道)。位元組對齊有什麼好處?以int型資料為例,如果它在記憶體中存放的位置按4位元組對齊,也就是說1個int的資料全部落在計算機一次取數的區間內,那麼只需要取一次就可以了。如圖a-1。如果不對齊,很不巧,這個int資料剛好跨越了取數的邊界,這樣就需要取兩次才能把這個int的資料全部取到,這樣效率也就降低了。