Shinobi Library - メモリマネージメント関数

syCallocMulti

サブヒープ領域への calloc 操作

書式

void *syCallocMulti( heaph, nobj, size )
SYS_MALCM_HEAPH *heaph
Uint32 nobj
Uint32 size

引数

heaph   (出力)ヒープハンドル
nobj   確保する数
size   一つ当たりの確保するサイズ

戻り値

なし

解説

この関数は、引数 heaph で示されるヒープ領域から 引数nobj × 引数size 分のメモリ領域を確保し、内容を 0 で初期化します。

用例

Sint8 myHeap[1024];
SYS_MALCM_HEAPH myHeaph;
STRUCT_FOO *foo;

syMallocMultiCreateHeap(&myHeaph, myHeap, 1024);
if((foo = syCallocMulti(&myHeaph, sizeof(STRUCT_FOO), 3)) == NULL){
	/* Could not allocate the memory */
	myError();
} else {
	/* Allocation OK */
	DoWhatYouWant(foo);
	syFreeMulti(&myHeaph, p);
}
syMallocMultiDelete(&heaph);

備考

サブヒープ領域からメモリ確保を行う以外は syCalloc()関数と同等の機能です。

参照

syMallocMultiCreate()
 サブヒープの登録
syMallocMultiDelete()
 サブヒープの登録解除
syMallocMulti()
 syMallocMulti サブヒープからのメモリ取得
syReallocMulti()
 サブヒープ上での realloc 操作
syFreeMulti()
 サブヒープから取得したメモリ領域の開放
syMallocMultiStat()
 サブヒープ領域の使用状況調査
syMallocMultiChangeIF()
 サブヒープに対するインタフェースの置換え
syCalloc()
 メモリの確保

syCallocMulti
COPYRIGHT © SEGA ENTERPRISES, LTD., 1998-2000