|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: Jul 2005
Città: Torino
Messaggi: 722
|
[C] disallocare matrici in vettore di struct
Salve, mi trovo con un problema che non so risolvere. Io ho allocato dinamicamente un vettore di struct, e dentro di esso ho creato due matrici dinamiche. Il problema è che non riesco a disallocarle, in quanto il programma termina mostrandomi un errore quando disalloco le righe delle matrici, non so come fare, quancuno mi può aiutare??? Grazie milleeeee
Codice:
typedef struct{
char **bia,**ner;
}giocatore;
giocatore *vett;
int main(){
int num=42;
//alloco il vettore
vett=(giocatore *)calloc(dim,sizeof(giocatore));
//alloco le matrici
vett[i].bia=(char **)calloc(30,sizeof(char));
for(j=0;j<30;j++){
vett[i].bia[j]=(char *)calloc(10,sizeof(char));
}
vett[i].ner=(char **)calloc(30,sizeof(char));
for(j=0;j<30;j++){
vett[i].ner[j]=(char *)calloc(10,sizeof(char));
}
//disalloco le matrici
for(i=0;i<num;i++){
for(j=0;j<30;j++){
free(vett[i].bia[j]);
free(vett[i].ner[j]);
}
//arrivato qui mi dà un errore e il programma termina
free(vett[i].bia);
free(vett[i].ner);
}
free(vett);
}
__________________
CPU: Intel core i7 920 Zalman 9900 cooled - Case:CM COSMOS S - MOBO: Asus P6T - RAM: 3X2Gb DDR3 Corsair XMS3 - VGA: GTX295 - HDD: WD 1TB - ALI: CM real power 850W - Monitor: HP W2558HC Trattative--> ~Bl4k, S5otto, Frytz, gaon174 |
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: Jun 2002
Città: Dublin
Messaggi: 5989
|
Non fai un ciclo for anche quando allochi ogni vett[i]? E quanto vale i?
Consiglio: spezza il tutto su più funzioni ausiliarie.
__________________
C'ho certi cazzi Mafa' che manco tu che sei pratica li hai visti mai! |
|
|
|
|
|
#3 |
|
Senior Member
Iscritto dal: Jul 2005
Città: Torino
Messaggi: 722
|
Grazie ho risolto aggiungendo un * alla dichiarazione della matrice, grazie lo stesso potete chiudere
__________________
CPU: Intel core i7 920 Zalman 9900 cooled - Case:CM COSMOS S - MOBO: Asus P6T - RAM: 3X2Gb DDR3 Corsair XMS3 - VGA: GTX295 - HDD: WD 1TB - ALI: CM real power 850W - Monitor: HP W2558HC Trattative--> ~Bl4k, S5otto, Frytz, gaon174 |
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 17:21.










- HDD: WD 1TB - ALI: CM real power 850W - Monitor: HP W2558HC 








