Yes. All of your statements are correct. However in case of first
it is better to say that
ip is a pointer to an
What happens if I print the result of ip?
It will print the address of
Will it print the address of variable x, something like
No. Addresses are generally represented in hexadecimal. You should use
%p specifier to print the address.
printf("Address of x is %p\n", (void *)ip);
Note that in the above declaration
* is not the indirection operator. Instead it specify the type of
p, telling the compiler that
p is a pointer to
* symbol performs indirection only when it appears in a statement.