After all, both these statements do the same thing...
int a = 10; int *b = &a; printf(\"%p\\n\",b); printf(\"%08X\\n\",b);
For example
x is Unsigned hexadecimal integer ( 32 Bit )
x
p is Pointer address
p
See printf on the C++ Reference. Even if both of them would write the same, I would use %p to print a pointer.
%p