# OS_ClearHeap

## 構文

      #include <nitro/os.h>

      void OS_ClearHeap( OSArenaId id, OSHeapHandle heap, void* start, void* end );

## 引数

id | クリアするヒープが含まれるアリーナのアリーナID
heap | クリアするヒープのヒープハンドラ
start | ヒープ領域の先頭アドレス
end | ヒープ領域の終了アドレス(+1)

## 返り値

なし。

## 説明

既にあるヒープに対し、クリアして初期化を行ないます。

ヒープ heap 上に確保していたメモリブロックはすべて破棄されます。ヒープのための領域 start と end を指定してください。ヒープに `OS_AddToHeap()` や `OS_AddExtraAreaToHeap()` による飛び地がある場合、その部分は初期化対象になりません。また、初期化によってその領域はヒープの一部から外れてしまいます。こうしたヒープに対する初期化は注意が必要です。

本関数は `OS_CreateHeap()` で作成された通常ヒープに対する関数です。`OS_CreateExtraHeap()` で作成した特殊ヒープの場合は、`OS_ClearExtraHeap()` を使用してください。

## 参照

`OS_InitAlloc, OS_AddToHeap, OS_ClearExtraHeap
`

## 履歴

2009/04/03 特殊ヒープについて追記
2004/11/08 初版