|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Junior Member
Iscritto dal: May 2010
Messaggi: 8
|
[C] problema compilazione
Ciao a tutti,
ho un problema con la compilazione di un programma. Ho fatto un progetto in Visual Studio C++, l'ho compilato e mi crea l'eseguibile correttamente. Poi ho compilato usando il comando gcc, da riga di comando, mi crea l'eseguibile, però per ingressi uguali, mentre il primo eseguibile funziona, il secondo si blocca. Qualcuno saprebbe spiegarmi il motivo, visto che i file sono gli stessi? Grazie. |
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: May 2006
Città: Milano&Palermo
Messaggi: 10273
|
perchè usare gcc se l'hai già compilato con visual studio?
__________________
PC9Ryzen 9 3900X64GB Vengeance LPXGigabyte RTX3080TiCorsair MP600Aorus Elite X570 - PC10SQ216GB LPDDR4256 GB SSDSurface Pro X - PC11Core i9-9980HK64GB DDR4512GB SSDMacBook Pro 2019 - xboxlivekipters - originkipter - steamkippoz - psnkipters |
|
|
|
|
|
#3 |
|
Junior Member
Iscritto dal: May 2010
Messaggi: 8
|
Grazie per la risposta!
Perchè si tratta di un progetto per un esame, ed è richiesto di compilarlo con gcc. Ma non dovrebbe dare lo stesso risultato? |
|
|
|
|
|
#4 |
|
Senior Member
Iscritto dal: Apr 2010
Città: Frosinone
Messaggi: 416
|
ma compila ma ti dà qualche problema in esecuzione? immagino che tu abbia già provato a vedere dove si blocca con gdb
|
|
|
|
|
|
#5 |
|
Junior Member
Iscritto dal: May 2010
Messaggi: 8
|
Praticamente rimane bloccato perchè entra in un ciclo infinito.
Solo che se uso l'eseguibile ottenuto con Visual Studio, con gli stessi dati, il ciclo termina. Non legge correttamente i valori da passare a una funzione, ma non so come risolvere il problema. Non ho usato gdb, ma ho comunque verificato i valori delle varibili, tramite delle printf. Ultima modifica di bmp : 19-09-2010 alle 17:39. |
|
|
|
|
|
#6 |
|
Senior Member
Iscritto dal: Nov 2005
Messaggi: 2782
|
Posta il codice (usando il tag CODE)
|
|
|
|
|
|
#7 |
|
Junior Member
Iscritto dal: May 2010
Messaggi: 8
|
La funzione è questa:
Codice:
void calcola(int n, int *id, int* pos, elementi *el, tree *r){
int a;
tree *p;
for(a=0; a<n; a++){
p = find(r,id[a]);
if (p == NULL){
printf("Errore!");
return;
}
else{
el = insert(el, p, pos[a]);
}}
|
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 14:06.



















