title: Pointer Arithmetic with array of char in c
body: <p>Why if I increment an array string I get an error while if I pass the value to a function I can make it work? A string array object is not already a pointer to the array elements?</p>
  
  <p>e.g.</p>
  
  <pre><code>void foo(char *a){
      printf("%c", *a);
      a++; // this works
      printf("%c", *a);
  }
  
  int main(){
      char a[] = "ciao";
      a++; // I get the error
      foo(a);
      return 1;
  }
  </code></pre>
  
  <p>thanks!</p>