內存對齊
C語言中的內存對齊操作
在編譯器給變量分配內存時,變量首地址總是變量字節數的倍數。比如在一段64位的地址空間中,總共有8個字節,char類型總是佔用8個字節,可以隨意分配。而int類型佔用4個字節,如果在這段空間中,前面3個字節都被char類型佔據,那麼int類型分配內存並不會緊接著第4個字節分配內存,而是從第5個字節啟分配內存。這就是內存對齊操縱。
內存對齊雖然會浪費部分的內存空間,但是會減少CPU對於內存的訪問次數,提升程序運行速度。
WELCOME TO THE MACHINE