APR中有这样的代码:
apr_memnode_t
*
node;
node = (apr_memnode_t * )malloc(size);
node -> next = NULL;
node -> index = index;
node -> first_avail = ( char * )node + APR_MEMNODE_T_SIZE;
node -> endp = ( char * )node + size;
node = (apr_memnode_t * )malloc(size);
node -> next = NULL;
node -> index = index;
node -> first_avail = ( char * )node + APR_MEMNODE_T_SIZE;
node -> endp = ( char * )node + size;
该代码实现了:分配了一个内存空间,该内存空间以struct apr_memnode_t 为顶部,APR_MEMNODE_T_SIZE之后到size为数据。
以后可以在自己的代码中用到这种方法!!!
感谢tingya的博客!!!