View Full Version : [c] Matrici dinamiche
Gandalf_BD
20-06-2004, 21:08
Ciao a tutti..
ora che ho capito come creare vettori dinamici, vorrei fare la stess cosa con le matrici, ma... come faccio?
non ho trovato da nessuna parte una spiegazione... mi potete aiutare?
magari ance con un esempio di codice... :D
Grazie
Gandalf
Ziosilvio
20-06-2004, 22:38
Puoi implementare una matrice bidimensionale usando un vettore dinamico di vettori dinamici. Per esempio:
double **mat;
Se vuoi una matrice con m righe ed n colonne, la allochi con:
mat=(double**)malloc(m*sizeof(double*));
if (mat!=NULL)
for (i=0; i<m; i++)
mat[i]=(double*)malloc(n*sizeof(double));
e quando devi deallocarla:
for (i=0; i<m; i++)
free(mat[i]);
free(mat);
Puoi anche fare una cosa un po' pių elaborata, usando le strutture, ad esempio:
struct matrice {
int r,c;
double **val;
};
cosė hai pių controllo sulle operazioni che ci fai (esempio: per il prodotto, il numero delle colonne del primo fattore deve essere uguale al numero di righe del secondo).
Gandalf_BD
21-06-2004, 08:23
GRAZIEEE!!! :) :)
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.