int main( void )
{
	char s1[] = "abc";
    char s2[] = "xyz";
    char *s3 = "ABC";
    char *p = s1;
    printf("[1]p=%s\n", p);
    p = s2;
    printf("[2]p=%s\n", p);
    *p = '1';
    printf("[3]p=%s\n", p);
    p = s3;
    printf("[4]p=%s\n", p);
	return 0;
}
$ gcc main.c -o main -lm && ./main
[1]p=abc
[2]p=xyz
[3]p=1yz
[4]p=ABC
*p=1 とすると、1yzとなるのか…
### const char*
int main( void )
{
	const char s1[] = "abc";
    const char s2[] = "xyz";
    const char *p = s1;
    printf("[1]p=%s\n", p);
    p = s2;
    printf("[2]p=%s\n", p);
	return 0;
}
$ gcc main.c -o main -lm && ./main
[1]p=abc
[2]p=xyz
int main( void )
{
	char s1[] = "abc";
    char s2[] = "xyz";
    char *const p = s1;
    printf("[1]p=%s\n", p);
    *p = '1';
    printf("[2]p=%s\n", p);
	return 0;
}
$ gcc main.c -o main -lm && ./main
[1]p=abc
[2]p=1bc
 
					 
