Dos matrices dimensionales y punteros

Tengo el siguiente fragmento de código:

char board[3][3] = {
                     {'1','2','3'},
                     {'4','5','6'},
                     {'7','8','9'}
                   };

printf("address of board : %p\n", &board);
printf("address of board[0] : %p\n", &board[0]);

Ambosprintf()odas las declaraciones @ imprimen el mismo valor:0x0013ff67

Según mi conocimiento, el nombre de la placa (es decir, matriz) representa la dirección de la primera submatriz (es decir)board[0] y

board[0] representa la dirección del primer elemento en la primera matriz (es decir)board[0][0]

Por qué recibo la misma dirección en todos misprintf() declaraciones? Espero diferentes direcciones para ambas declaraciones.

Soy bastante nuevo en estas cosas y no entiendo este comportamiento. Amablemente ilumíneme.

Respuestas a la pregunta(8)

Su respuesta a la pregunta