what is the difference between pointer and ordinary variable?
Ordinary variable stores what ever value you assigns to it as long as it is of the same type as the variable. In the other hand, a pointer variable stores the address of the ordinary variable as long as it is of the same type as the pointer variable.