Pointer expressions are expressions that evaluate to an address
value. These include expressions containing pointer variables, the
address-of operator (&), string literals, and array names. If p is a pointer and j is an int, the following are pointer expressions:
p
&j
p + 1
"abc"
(char *) 0x000fffff