このトピックはすでに何度か議論されていることを知っており、基本的に配列とポインターの違いを知っていると思いますが、配列がメモリに正確に格納される方法に興味があります。
例えば:
const char **name = {{'a',0},{'b',0},{'c',0},0};
printf("Char: %c\n", name[0][0]); // This does not work
しかし、次のように宣言されている場合:
const char *name[] = {"a","b","c"};
printf("Char: %c\n", name[0][0]); // Works well
すべてがうまくいきます。