the following code gave me the results below...
Address of &pFloat: 0x0066FDF4
pFloat = &myFloat;
myFloat = (float)10.01;
cout << "\nAddress of &pFloat: " << &pFloat;
cout << "\nAddress of pFloat: " << pFloat;
cout << "\nAddress of &myFloat: " << &myFloat;
cout << endl;
Address of pFloat: 0x0066FDF0
Address of &myFloat: 0x0066FDF0
Press any key to continue
Indicating that the pointer is store at a different location than
say for instance the memory block 10 holds the value 11
the memory block 11 holds the value of the actual float 10.01 or whatever.... I used 10 and 11 to simplify the explanation...