📄 ds_array.cpp
字号:
#include "ds_head.h"
#include "ds_array.h"
BOOL DSA_CreateArray( DS_ARRAY* me, UINT count, UINT size )
{
if( count <= 0 )
return FALSE;
me->head = malloc( size*count );
if( me->head == NULL )
return FALSE;
me->count = count;
me->size = size;
return TRUE;
}
BOOL DSA_DestroyArray( DS_ARRAY* me )
{
if( me == NULL )
return FALSE;
if( me->head )
{
free( me->head );
me->head = NULL;
}
me->count = 0;
me->size = 0;
return TRUE;
}
void* DSA_GetAt( DS_ARRAY* me, UINT index )
{
if( me->head == NULL )
return NULL;
if( index >= me->count )
return NULL;
return (BYTE*)me->head + me->size*index;
}
BOOL DSA_SetAt( DS_ARRAY* me, UINT index, void* element )
{
void* p;
if( me->head == NULL )
return FALSE;
if( index >= me->count )
return FALSE;
p = (BYTE*)me->head + me->size*index;
memcpy( p, element, me->size );
return TRUE;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -