int* A[n];
A first and foremost is an array no matter what type the element is. After applying pointer *, we know A is an array of int pointers.
int (*A)[n];
By applying brackets, pointer * has higher precedence over array [] in this case. Then A is first and foremost a pointer no matter what it is pointing to. After applying array [], we know A is a pointer to an array of int.
int *(A[n]);
Brackets won't change any precedence order that would affect the array [], therefore removing brackets would yeild int* A[n]
same as your 1st case.
Are array pointers?
No. Array is a datastructure that allocates memory pool and stores the data sequentially where as Pointer points to a particular index in memory pool and references the data stored at that memory location.