おせっかいかもしれんが
int a[4], b[2][2];
func(a);
func(b[0]);
func(b[1]);
ってするんぢゃねの?

func()の定義って func(int *p) もしくは func(int p[]) だろ?