Ciao a tutti,
da poco sono stato costretto ad installare Windows 8. Dopo aver configurato MinGw + NetBeans, ho provato a fare il porting di un semplice programma che stavo facendo su Linux. Ho notato che su winzoz, se metto come dimensione dell'array 1'600'000, il programma compila ma non parte! Mentre su Linux andava alla perfezione! Se invece diminuisco la dimensione a 160'000 tutto funziona come dovrebbe.
Ho notato che, facendo il debug, mi da questo errore durante l'esecuzione:
e mi viene segnalato in questa porzione di codice:codice:Signal received: SIGSEGV (Segmentation fault)
Vi posto il source completo:codice:void msort(long a[], long n) { long aux[n]; // parte che genera errore mergesort(a, 0, n-1, aux); }
fastSortingTest.c
sorting.c
Ho provato a cambiare tutti gli int in long pensando fosse questo il problema... ma a quanto pare no.
La cosa strana è che lo stesso codice funziona perfettamente su Linux con array di dimensioni anche molto maggiori! Come mai questa cosa?
Spero che riusciate a darmi una mano.
Grazie

Rispondi quotando