根据参数NeedsToAlign来决定是不是以内存对齐的方式进行内存申请。也就是如果NeedsToAlign为true,那么就要求内存对齐,否则无需对齐。你可以调试跟进去看看 conditional_aligned_malloc的源码啊。
内存对齐”应该是编译器的“管辖范围”。编译器为程序中的每个“数据单元”安排在适当的位置上。但是C语言的一个特点就是太灵活,太强大,它允许你干预“内存对齐”。如果你想了解更加底层的秘密,“内存对齐”对你就不应该再模糊了。词条简介 对于大部分程序员来说,“内存对齐”对他们来说都应该是“透明的”。...