Originariamente inviato da Sere22
grazie ho trovato l'errore, era nella malloc!!!
Ovvero questa

m=(ART*)malloc(r*sizeof(int));

che doveva essere

m=(ART*)malloc(r*sizeof(ART));