A pointer is simply a physical place in memory. Due to being a physical place in memory this means two things:
1. It has it's own address.
2. It may store data.
The data a pointer stores is an address something else and thus the name "pointer".
To dereference (use) the pointer you simply call it's name:
e.g.
void* pFunction = myFunction; //assign pFunctions data to the address of myFunction
pFunction();// this is the same as calling myFunction();
pFunction=myNewFunction;//assign pFunctions data to a different address
pFunction(); //now pFunction is like calling myNewFunction();
I hope this helps clarify any confusion. If not ask me questions an I will answer.