about the second question yes you can use pointer to refrence to another pointer and this is the method used in dynamic allocation of multi dimintion aray you can write :
void a2d(int i,int j)
{
int **t =new int*[i] ;//rows
for(int k=0;k<i;k++)
t[k]=new int[j] ; //col
}
but i do not understand the first question but notice that the pointer is a refrense mean that if u pass a pointer of int to an function it does not take a copy from the int it takes a copy of the refrence to the int so if u change the int value it will be changed and u can not retain the previous value for example :
main()
{
int *i=new int ;
*i=2;
fun (i) ;
cout<<*i;
getch();
}
void fun (int *m)
{
*m=3;
}
the result of the cout will be 3 is that what u mean ?