Output of pointers

The output may seem foreign, particularly to those coming from the pointer tutorial. Since addresses are just integers, shouldn't the array addresses print as something like 3221223612 instead of 0xbffff8bc?

The array address is being printed to the screen in base 16 (hexadecimal) rather than base 10 (decimal). For reasons beyond the scope of this tutorial, hexadecimal is a more "natural" way of displaying addresses.

The reason the pointer tutorial displayed addresses as decimal numbers is because the addresses were cast into unsigned long int's rather than allowing them to be assigned to pointer variables. (All of this is explained in the pointers tutorial.)