memcpy and alignment for structs