为程序定义数据流以读入内存(例如文件格式,但可以是流入内存的任何其他类型的数据)。
如何将数据对齐以获得最佳memcpy
?
虽然memcpy
并不需要对齐,但我注意到它的常见格式是写入填充字节,对齐为4个字节,例如(即使文件'没有内存转储。)
我认为这是因为它对对齐数据的操作速度更快,但我并不确定细节。
对于常见的体系结构,(X86,x64,ARM,PPC),(32/64位),常见的libc实现(glibc,freebsd,microsoft'等等)......是否有一些规则用于对齐数据以获得最佳读数的拇指?
_Alignof
对齐?这对于实施来说可能是不切实际的,因为这会因系统而异。