>>285
realloc() から返ってきたポインタは free() する必要があります
realloc() に渡したポインタは free() する必要はありません
ただ、realloc() が失敗して null を返す場合があるので、realloc() に渡すポインタは別途とっておかないと、リークします

>>286
それは本当ですか?realloc() にバリエーションはなかったと思いますが
上記の realloc() 失敗があるため例外との相性は悪いと記憶しています(ただ、昔苦しんだ記憶があるけれども、もう忘れてしまった…)
C++ には realloc() はなく、そうしたければ自分で書くしかないかと思います、realloc() を避ける立場は理解できます