I recently started studying the ANSI C language and I've come accross a dilema. I read in a book that pointers are a very useful part of programming, and an example of using pointers was that you needed them to communicate with hardware (?). I don't understand why you use a pointer. In all of the examples in this book (Sams Teach Yourself C in 24 Hours) - that I've come accross - the values of the pointers can just as easily be attained by &variable. Anybody know a good reason for pointers (other than because the developer was bored)?