There is no single "pointer" data type; you have many pointer data types. A pointer to int may have a different size and representation from a pointer to char, which may have a different size and rep...
Pointer datatypes are actually the datatype of the variables whose address the pointer is going to store or point to.i.e. to point an integer value, the pointer should of the same datatype i.e. int type.