the c++ programming language, chapter 5.9 exercise 1
<p>From the book:</p>

<blockquote>
  <p>Write declarations for the following: a pointer to a character, an
  array of 10 integers, a ref-erence to an array of 10 integers, a
  pointer to an array of character strings, a pointer to a pointer to a
  character, a constant integer, a pointer to a constant integer, and a
  constant pointer to an integer. Initialize each one.</p>
</blockquote>

<p>I'm confused by "a pointer to an array of character strings". What does Stroustrup want? Is this to be meant literally? In which way?</p>

<p>The straight and simple solution:</p>

<pre><code>char* c[] = {"foo", "bar", "baz"};
char** c_ptr;
</code></pre>

<p>Or this one:</p>

<pre><code>typedef char carray[20];
typedef array* carray_ptr;
carray_ptr ptr = new carray[10];
</code></pre>

<p>What do you think? (Okay, a pointer to pointer isn't very straight.)</p>
