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:

    The composition of a tragedy requires testicles.
    Voltaire [François Marie Arouet] (1694–1778)

    Give a scientist a problem and he will probably provide a solution; historians and sociologists, by contrast, can offer only opinions. Ask a dozen chemists the composition of an organic compound such as methane, and within a short time all twelve will have come up with the same solution of CH4. Ask, however, a dozen economists or sociologists to provide policies to reduce unemployment or the level of crime and twelve widely differing opinions are likely to be offered.
    Derek Gjertsen, British scientist, author. Science and Philosophy: Past and Present, ch. 3, Penguin (1989)

    It is my PRIDE, my damn’d, native, unconquerable Pride, that plunges me into Distraction. You must know that 19-20th of my Composition is Pride. I must either live a Slave, a Servant; to have no Will of my own, no Sentiments of my own which I may freely declare as such;Mor DIE—perplexing alternative!
    Thomas Chatterton (1752–1770)