constant/literal String pointer
<p>What are the benefits of doing:</p>

<pre><code>String *hello_world;

hello_world="Hello World";
</code></pre>

<p>vs</p>

<pre><code>String hello_world;

hello_world="Hello World";
</code></pre>

<p>For the first one, the characters that make up the string literal or constant, are stored inside a string table by the compiler and <code>hello_world</code> points to the string in the table.</p>

<p>In the second one we set aside memory for the string.</p>

<p>Is this just a memory usage? In that case wouldn't it always be better to have strings point to the string table created by the compiler to save memory? </p>

<p>Also should you always use pointers instead of indexing an array? Or is this really dependent on the size of our data?</p>

<p>Thank you.</p>
