Dereference Operator - Composition

Composition

Further information: Pointer: Multiple indirection

The unary * operator, as defined in C and C++, can be used in compositions in cases of multiple indirection, where multiple acts of dereferencing are required. Pointers can of course reference other pointers, and in such cases, multiple applications of the dereference operator are needed. Similarly, the Java dot operator can be used in compositions forming quite sophisticated statements that require substantial dereferencing of pointers behind the scenes during evaluation.

A basic example is in the argv argument to the main function in C (and C++), which is given in the prototype as char **argv – this is because the variable argv itself is a pointer to an array of strings (an array of arrays), so *argv is a pointer to the 0th string (by convention the name of the program), and **argv is the 0th character of the 0th string.

Read more about this topic:  Dereference Operator

Famous quotes containing the word composition:

    Boswell, when he speaks of his Life of Johnson, calls it my magnum opus, but it may more properly be called his opera, for it is truly a composition founded on a true story, in which there is a hero with a number of subordinate characters, and an alternate succession of recitative and airs of various tone and effect, all however in delightful animation.
    James Boswell (1740–1795)

    Every thing in his composition was little; and he had all the weaknesses of a little mind, without any of the virtues, or even the vices, of a great one.
    Philip Dormer Stanhope, 4th Earl Chesterfield (1694–1773)

    Pushkin’s composition is first of all and above all a phenomenon of style, and it is from this flowered rim that I have surveyed its seep of Arcadian country, the serpentine gleam of its imported brooks, the miniature blizzards imprisoned in round crystal, and the many-hued levels of literary parody blending in the melting distance.
    Vladimir Nabokov (1899–1977)