# NNS_FndCreateExpHeapEx

## 構文

      #include <nnsys/fnd.h>

      NNSFndHeapHandle    NNS_FndCreateExpHeapEx(
      	                        void*   startAddress,
      	                        u32     size,
      	                        u16     optFlag);

## 引数

startAddress | ヒープに割り当てるメモリ領域の先頭アドレス
size | ヒープに割り当てるメモリ領域のサイズ(バイト)
optFlag | ヒープへのオプション(詳細は下記を参照)

## 返り値

ヒープを作成することが出来た場合、ヒープへのハンドル値を返します。 ヒープを作成することが出来なかった場合、NNS_FND_HEAP_INVALID_HANDLE (NULL値)を返します。

## 説明

拡張ヒープを作成します。ヒープのための領域は startAddress で指定したアドレスから size で指定されたサイズ分のメモリ領域になります。

optFlag で、ヒープへのオプションを指定できます。

NNS_FND_HEAP_OPT_0_CLEAR | ヒープからメモリを確保したときに、確保したメモリブロックを0で埋めます。
NNS_FND_HEAP_OPT_DEBUG_FILL | ヒープ作成時および、メモリブロック確保時・解放時にそれぞれ異なった32bit値でメモリ領域を埋めます。このフラグはデバッグ用で、メモリの初期化忘れや無効なメモリ領域を指しているポインタを通じてのメモリアクセスのバグを見つけるのに活用できます。最終ROM版(FINALROM)ライブラリでは機能しません。

## 参照

`NNS_FndCreateExpHeap
`

## 履歴

2004/10/15 引数名への参照を間違えていたのを修正
2004/04/28 ヒープを作成することができなかった場合の値を間違えていたのを修正
2004/04/01 初版