#include <stdio.h>
#include <stdlib.h>
int main(void)
{
char **p = malloc(sizeof(char *) * 3);
if (p == NULL) {
perror("malloc() error");
return -1;
}
char a = 'a', b = 'b', c = 'c';
p[0] = &a;
p[1] = &b;
p[2] = &c;
printf("%c, %c, %c\n", *p[0], *p[1], *p[2]);
printf("%c, %c, %c\n", **p, **(p + 1), **(p + 2));
**p = 'z';
**(p + 1) = 'x';
*p[2] = 'w';
printf("%c, %c, %c\n", a, b, c);
free(p);
return 0;
}
/*
run:
a, b, c
a, b, c
z, x, w
*/