L'indicizzazione con l'istruzione *(matrix+colonne*i+j) è possibile solo se gestisci la matrice come se fosse un array monodimensionale:

codice:
int *matrix;
...
matrix = (int *) malloc(righe*colonne*sizeof(int));
...
for (i=0; i<righe; i++) {
    for (j=0; j<colonne; j++) {
        printf("%d\n", *(matrix + colonne*i + j));
    }
}
tieni presente chiaramente che, se non inizializzi in qualche modo i valori della matrice, otterrai solo la stampa di valori sporchi.