int* 型はない。型と見なしたら混乱する、俺は。
int *p;は、記号表現としての*pという表現がintという意味。*pで1つのint変数。
だから当然sizeof(int)のメモリも確保される。
int*が型ならアドレス変数のサイズだけ確保され、intオブジェクト分のメモリは確保されないはず。

int a b c *d;などと、まとめて書けるように作ってある
ここで、
*のない変数はアドレスを参照するために&が必要
*がある変数は*を外すだけでいい

&がメモリ上のオブジェクト(変数とか関数)のアドレスを参照するのに対して、アドレスからオブジェクトにアクセスするから*は逆参照演算子と呼ばれる。単項演算子。