the pointer is really not simple, but also not difficute. The essenture of Pointer is an address of a allocated space. The allocated space can be just an unit place for some date tpye.
for example
int * a = new int; 4 Byte place will be dynamicaly allocated, and then assign the address to the pointer variable a.
and a block space can also be allocated, for example
int * a = new int[5]; 20Byte will be allocated and then assign the first address of this allocation to the pointer variable a.