title: Difference between char** args and char* args
body: <pre><code>char** args = (char**)malloc(MAX_ARGS*sizeof(char*));
  </code></pre>
  
  <p>and</p>
  
  <pre><code>char* args = (char*)malloc(MAX_ARGS*sizeof(char*));
  </code></pre>
  
  <p>Please explain the difference between these two types of declaration. Why do we need 2 stars and why 1 star?</p>