Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Prova GeForce NOW upgrade Blackwell: il cloud gaming cambia per sempre
Prova GeForce NOW upgrade Blackwell: il cloud gaming cambia per sempre
L'abbonamento Ultimate di GeForce NOW ora comprende la nuova architettura Blackwell RTX con GPU RTX 5080 che garantisce prestazioni tre volte superiori alla precedente generazione. Non si tratta solo di velocità, ma di un'esperienza di gioco migliorata con nuove tecnologie di streaming e un catalogo giochi raddoppiato grazie alla funzione Install-to-Play
Ecovacs Deebot X11 Omnicyclone: niente più sacchetto per lo sporco
Ecovacs Deebot X11 Omnicyclone: niente più sacchetto per lo sporco
Deebot X11 Omnicyclone implementa tutte le ultime tecnologie Ecovacs per l'aspirazione dei pavimenti di casa e il loro lavaggio, con una novità: nella base di ricarica non c'è più il sacchetto di raccolta dello sporco, sostituito da un aspirapolvere ciclonico che accumula tutto in un contenitore rigido
Narwal Flow: con il mocio orizzontale lava i pavimenti al meglio
Narwal Flow: con il mocio orizzontale lava i pavimenti al meglio
Grazie ad un mocio rotante che viene costantemente bagnato e pulito, Narwal Flow assicura un completo e capillare lavaggio dei pavimenti di casa. La logica di intellignza artificiale integrata guida nella pulizia tra i diversi locali, sfruttando un motore di aspirazione molto potente e un sistema basculante per la spazzola molto efficace sui tappeti di casa
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 09-06-2013, 10:14   #1
davide356
Junior Member
 
Iscritto dal: Jun 2013
Messaggi: 2
[C] Problema con funzione e struct

Buongiorno ho un problema con un programma che ho scritto in C vi spiego cosa succede:

Io ho un programma che usa diverse struct definite da me e comprende delle funzioni. In queste struct c'è un campo id definito come array di char. Il programma funziona correttamente.

Successivamente sono andato a sostituire il tipo di id facendolo long visto che sono tutti numeri(cambiando ovviamente tutte le cose diverse tra char e long).Quando vado a fare questa sostituzione però un campo int della struct qualche volta viene inizializzato a caso.

Qualcuno ha qualche idea?
davide356 è offline   Rispondi citando il messaggio o parte di esso
Old 09-06-2013, 10:19   #2
[Kendall]
Senior Member
 
L'Avatar di [Kendall]
 
Iscritto dal: Jul 2005
Città: Vicenza
Messaggi: 1570
Quote:
Originariamente inviato da davide356 Guarda i messaggi
Buongiorno ho un problema con un programma che ho scritto in C vi spiego cosa succede:

Io ho un programma che usa diverse struct definite da me e comprende delle funzioni. In queste struct c'è un campo id definito come array di char. Il programma funziona correttamente.

Successivamente sono andato a sostituire il tipo di id facendolo long visto che sono tutti numeri(cambiando ovviamente tutte le cose diverse tra char e long).Quando vado a fare questa sostituzione però un campo int della struct qualche volta viene inizializzato a caso.

Qualcuno ha qualche idea?
Dovresti postare il relativo codice, altrimenti risulta davvero difficile aiutarti.
[Kendall] è offline   Rispondi citando il messaggio o parte di esso
Old 09-06-2013, 10:52   #3
davide356
Junior Member
 
Iscritto dal: Jun 2013
Messaggi: 2
Queste sono le struct:
typedef struct nodo{
long id;
//(char id[20];
int oraArr;
int oraPart;
} nodo;

typedef struct percorso{
long id;
//char id[20];
int n;
nodo *nodi;
} percorso;
Queste le funzioni:
int contiene(percorso *ps, long s, int l){
int c;
if (l==0)
return -1;
else {
for(c=0; c<l; c++){
if (ps[c].id == s)
return c;
}
return -1;}
}
int addnodo(nodo **n, long s, int oa, int op, int c){
c++;
(*n)=realloc((*n), c*sizeof(nodo));
/*strcpy((*n)[c-1].id,s);*/
(*n)[c-1].id = s;
(*n)[c-1].oraArr=oa;
(*n)[c-1].oraPart=op;
return 1;
}
int addpercorso(percorso **ps, long s, int n, int z){
n=n+1;
//printf("%d\n",n);
(*ps)=(percorso*)realloc((*ps),n*sizeof(percorso));
/*strcpy((*ps)[n-1].id,s);*/
(*ps)[n-1].id=s;
(*ps)[n-1].n=z;
//printf("%d\n",(*ps)[n-1].n);
return 1;
}

Questa la parte di main che invoca le funzioni
int g=contiene(percorsi, A[j].B[h].id, p);
if(g>=0){
int d=percorsi[g].n;
printf("%d g %d d\n", g,d );

percorsi[g].n=d+addnodo(&percorsi[g].nodi, A[j].id, A[j].B[h].oraArr, A[j].B[h].oraPart, d);
}
else{
p=p+addpercorso(&percorsi, A[j].B[h].id, p, 0);
int d=percorsi[p-1].n;
percorsi[p-1].n=d+addnodo(&percorsi[p-1].nodi, A[j].id, A[j].B[h].oraArr, A[j].B[h].oraPart, d);
}
}
}
davide356 è offline   Rispondi citando il messaggio o parte di esso
Old 10-06-2013, 09:02   #4
lorenzo001
Senior Member
 
Iscritto dal: Jul 2008
Città: Roma
Messaggi: 542
Il problema potrebbe essere nel main o in altre parti ... se non posti *tutto* il codice in maniera che sia compilabile senza errori (e quindi si possa provare eseguendolo) non si potrà vedere se e dove si corrompe la struttura.

P.S. Ho 57 errori nella compilazione ... cosa posso provare?

Ultima modifica di lorenzo001 : 10-06-2013 alle 09:15.
lorenzo001 è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Prova GeForce NOW upgrade Blackwell: il cloud gaming cambia per sempre Prova GeForce NOW upgrade Blackwell: il cloud ga...
Ecovacs Deebot X11 Omnicyclone: niente più sacchetto per lo sporco Ecovacs Deebot X11 Omnicyclone: niente più...
Narwal Flow: con il mocio orizzontale lava i pavimenti al meglio Narwal Flow: con il mocio orizzontale lava i pav...
Panasonic 55Z95BEG cala gli assi: pannello Tandem e audio senza compromessi Panasonic 55Z95BEG cala gli assi: pannello Tande...
HONOR Magic V5: il pieghevole ultra sottile e completo! La recensione HONOR Magic V5: il pieghevole ultra sottile e co...
Ionity prova una soluzione contro i ladr...
Pirateria, svolta clamorosa: Dazn e Lega...
Maxi richiamo Toyota e Lexus: oltre 900....
Blackwell Ultra: fino al 45% di prestazi...
Neuralink: 12 pazienti hanno usato l'imp...
Amazon sorprende tutti oggi: valanga di ...
A19 e A19 Pro: Apple svela le differenze...
NASA: inizia l'esperimento CHAPEA per si...
DAZN rischia sanzioni milionarie per pub...
Invasione di gamer a Montecatini Terme: ...
Streaming musicale con qualità da...
Von der Leyen spinge sull'IA europea: fo...
Tesla mette in vendita la tecnologia Sup...
La costruzione del drone della missione ...
iPhone 17: Apple introdurrà fin d...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 14:57.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Served by www3v