内存对齐函数
2012-03-11 14:54
246 查看
课本上经常提到“内存对齐”,我一直感觉这是个很抽象的概念。最近在调试代码的时候,偶然发现了一个函数,竟然实现了这个功能!
“内存对齐”应该是编译器的“管辖范围”,编译器将程序中的每个数据单元安排在适当的位置上。
/*!
Aligns buffer size by the certain number of bytes
This small inline function aligns a buffer size by the certian number of bytes by enlarging it.
*/
static inline size_t alignSize(size_t sz, int n)
{
return (sz + n-1) & -n;
}
数据sz要存储到内存中,以N为单位进行内存对齐。
该函数返回的是实际中要分配的内存空间。
“内存对齐”应该是编译器的“管辖范围”,编译器将程序中的每个数据单元安排在适当的位置上。
/*!
Aligns buffer size by the certain number of bytes
This small inline function aligns a buffer size by the certian number of bytes by enlarging it.
*/
static inline size_t alignSize(size_t sz, int n)
{
return (sz + n-1) & -n;
}
数据sz要存储到内存中,以N为单位进行内存对齐。
该函数返回的是实际中要分配的内存空间。
相关文章推荐
- VBS教程:函数-GetObject 函数
- javascript的函数
- 为什么虚函数功能失常了?
- js判断select列表值的函数
- each函数不能使用break和continue关键字,替代方法
- NVL()函数
- C语言中fopen函数用法详解
- iphone 实现截屏的函数
- (Oracle)存储过程、存储函数和包的相关知识与实例
- OBJECT ARX 实体类 通用操作函数
- Opencv cvFindContours 函数的详细说明
- 一些很有用的 JavaScript 函数
- 类成员函数调用的细节
- WaitForSingleObject()函数,其第一个参数是一个核心对象(如线程)的 handle
- 从零开始学C++之模板(一):函数模板、函数模板特化、重载函数模板、非模板函数重载
- SQL newid()函数及VFP随机函数
- dup()以及dup2()函数介绍
- 编写可变参数c函数
- 94. 使用范例来编写小巧的函数
- 函数的入口处与出口处应注意的问题