char[] is a “constant pointer” where as char * can be moved

char[] str1 = "foo";
 
str1++; // invalid
 
char  *str2 = "foo";
 
str++ // valid

char[] : char array stored on stack char * : pointer to string literal stored anywhere, cannot modify the string