Mi aspettavo qualche dubbio.....

Tornando al mio codice iniziale : perchè debbo usare B[0] o C[1] o D[2] invece di B o C o D
per stampare la stringa puntata da A visto che sono tutti puntatori e non vettori di puntatori ?


codice:
              #include <stdio.h>
             #include <string.h>
             #include <stdlib.h>

            int main(void) {        
         
        
    char *P[100] = {"gennaio", "febbraio",
                    "marzo", "aprile",
                    "", ""};


    char *A ;

    A = P[3]  ;

    char **B = &A ;

    char ***C = &B ;

    char ****D = &C ; 
 
  
  
   printf("%s\n",  A);

  printf("%s\n",  B[0]);

  printf("%s\n",  C[1]);

  printf("%s\n",  D[2]);


 
}