Salve, ho dichiarato la seguente struct:
codice:
typedef struct problemData{
int n;
int m;
int num_var;
int num_slack;
int not_zero_coeff;
int solution;
int iterations;
int* way;
int* basevar;
bool art_var;
bool first_open;
bool* varstate;
double** mat;
char problem_name[50];
char* res_name;
}needed_data;
La utilizzo nel main nel seguente modo:
codice:
void main(){
needed_data data;
data.res_name = "results.txt";
// Richiesta inserimento nome file dati
do
{
printf("\nDigitare il nome del file con i dati del problema: ");
scanf("%s",&data.problem_name);
printf("\n");
}
while (!getData(&data));
simplessoDuale(&data);
system("pause");
free(&data);
}
Tuttavia quando vorrei liberare la memoria allocata tramite:
MSV 2005 crasha dicendomi:
Windows ha generato un punto di interruzione in Simplesso Duale.exe.
Ciò può essere dovuto a un danneggiamento dell'heap e indica un errore in Simplesso Duale.exe o in una qualunque delle DLL che ha caricato.
Controllare la finestra di output per ulteriori informazioni diagnostiche.
Potrei sapere dove sta l'errore e se eventualmente esiste un altro metodo in alternativa
alla free()? Grazie.
:master: