Su un test universitario, ho trovato una domanda con questo codice:
ho pensato si generasse un errore in esecuzione nell'uso di b[3],pensando che la matrice "a" fosse un puntatore a puntatori, ma in realtà stampa 4. Non riesco a capirne il perché, se dipende da come vengono create in memoria, rendendo possibile la comunicazione tra la prima riga e la seconda riga della matrice.codice:int a[2][3]={{1,2,3},{4,5,6}}; int *b=(int*)a; printf("%d\n", b[3])