title: Why can a string be assigned to a char* pointer, but not to a char[] array?
body: <p>Can someone explain why this works with the pointer: </p>
  
  <pre><code>char * str1;
  
  str1 = "Hello1";
  
  str1 = "new string";
  
  // but not this
  char str2 [] = "hello";
  str2 = "four";
  
  // or this
  char str3 [];
  str3 = "hello";
  str3 = "hello";
  </code></pre>