Pointer variables are used to store the address of variable.
The following are the main distinctions between pointers and reference parameters:
Pointers are used to hold the address of a variable, whereas references are used to refer to an existing variable by another name.
A null value cannot be assigned to a reference, although a pointer can.
Pass by value can be used to refer to a reference variable, whereas pass by reference can be used to refer to a pointer.
A reference must be initialized at the time of declaration, but a pointer does not.
A reference has the same memory location as the original variable, but it also occupies some stack space, whereas a pointer has its own memory address and stack size.