Here is an example for what a pointer to a pointer ( in C++ you one would normally use a reference to a pointer ) might be good for.
Code:
# include <iostream>
using namespace std;
void ex1(int * pi, int val ) { *pi = val; }
void ex2(int ** ppi, int val ) { *ppi = new int; **ppi= val;}
int main() {
int a = 1;
int * pa = &a;
cout << "a=" << a << " *pa=" << * pa<< endl ; // both outputs are 1
ex1( pa, 2 );
cout << "a=" << a << " *pa=" << * pa<< endl ; // both outputs are 2
ex2( &pa, 3 ); // changes the
cout << "a=" << a << " *pa=" << * pa<< endl ; // outputs are 2, 3
// ex2 made pa point to a different location
delete pa; // pa has to be deleted because ex2 allocated a new pointer to an int
return 0;
}
Kurt