OK, Narue. Thanks for your reply.
I think I understand the first part of it.
For line 13, the two values should be equal to each other and be 123.
For line 12, the two values should be equal to each other and be the address of variable i.
For line 11, the two values should be equal to each other and be the address of pointer p1.
For line 10, the two values should be equal to each other and be the address of pointer p2.
For the second part, I referred back to my Stroustrup book. It does discusses how the * and & operators do not function identically(?) for chars and ints. It advises the use of reinterpret_cast to deal with conversions of type. I am not at all clear on this, but fortunately, do not need that knowledge in the near future. I will read more on how types affect pointer and de-reference operators.