title: gcc saying "assignment from incompatible pointer type [enabled by default]
body: <p>Ok so I keep getting this error:</p>
  
  <pre><code>$ gcc -Wall -g translate.c support.c scanner.c -o translate
  translate.c: In function ‘main’:
  translate.c:22:16: warning: assignment from incompatible pointer type [enabled by default]
       dictionary = createArray(count);
              ^
  support.c: In function ‘readTokens’:
  support.c:66:18: warning: assignment from incompatible pointer type [enabled by default]
           a[count] = token;
                ^
  </code></pre>
  
  <p>and I don't know why.</p>
  
  <p>here's my main function:</p>
  
  <pre><code>#include &lt;stdio.h&gt;
  #include &lt;stdlib.h&gt;
  #include &lt;string.h&gt;
  #include "support.h"
  
  int main(int argc, char** argv) {
      int i;
      int count;
      char** dictionary;
  
      if (argc != 3) {
          printf("need two arguments!\n");
          exit(-1);
      }
  
      count = countTokens(argv[1]);
      printf("there are %d tokens and strings\n", count);
  
      dictionary = createArray(count);
  
      readTokens(argv[1], dictionary);
  
      printf("The dictionary:\n");
      for (i = 0; i &lt; count; ++i) {
          printf("%s\n", dictionary[i]);
      }
      return 0;
  }
  </code></pre>
  
  <p>and my create arrays function:</p>
  
  <pre><code>char* createArray(int count) {
      char* a;
      a = malloc(sizeof(char*) * count);
      if (a == 0) {
          fprintf(stderr, "memory allocation failed\n");
          exit(1);
      }
  
      return a;
  }
  </code></pre>
  
  <p>and its header</p>
  
  <p><code>char * createArray(int);</code></p>
  
  <p>I have no idea how to get this to go away. I've tried taking away and adding asteriks and changing from one equal signs to two, but it's not working. 2nd year cs student, first year in C. Any help would be appreciated a million times over. Thanks!</p>