>>35
うーん・・・。
intポインタは「intを指すポインタですよ」ってだけ。
*intでアドレス先のデータをintとして処理する。

だからmalloc(sizeof(int) * 10)で確保した領域を
int *ですと教えないとintとして使えない。
(int *)にキャストする事によって
(*heap)や*(heap+1)やheap[2]という形でint配列としてアクセスできる。