In This Chapter
Defining operations on a pointer
Comparing pointer addition with indexing an array
Extending arithmetic to different types of pointers
Sorting out constant pointers from pointers to constants
Reading the arguments to a program
Chapter 17 introduced the concept of a pointer variable as a variable designed to contain the address of another variable. I even went so far as to suggest a couple of uses for pointer variables. However, you've only begun to see the myriad ways that pointer variables can be used to do some pretty cool stuff and really confuse you at times as well.
This chapter examines carefully the relationship between pointers and arrays, a topic that I brushed over in the last chapter.
Some of the same operators applicable to integers are applicable to pointer types. This section examines the implications of this to both pointers and the array types studied so far.
Table 18-1 lists the three fundamental operations that are defined on pointers.
Table 18-1. Three Operations Defined on Pointer Type Variables
Calculate the address of the object offset entries from the pointer
Move the pointer over one entry
Calculate the number of entries between pointer2 and ponter1
Although not listed in Table 18-1, operations that are related to addition, such as
pointer += offset, are also defined. Subtraction ...