Ce un il = NULL dopo il malloc credo sia sbagliato.