Does a two-dimensional array of character pointers need to be terminated by two null?
<p>The other day, I was reading a book where I found this code:</p>

<pre><code>char *words[][40] = {"Goat", "A herbivore",
                     "Dog", "An omnivore",
                     "Fox", "A carnivore",
                     "Bear", "An omnivore"
                     "", ""};
</code></pre>

<p>And the book said, "notice, the list must be terminated by two nulls". But when I compiled this code without the nulls, it compiled and worked just as desired. Please explain if the nulls are of any use. I am quite new to C(++), so please elaborate.</p>
