Δημοσιεύτηκε: 13 Απρ 2010, 22:35
από Dimitris
Πολυ απλά:
Κώδικας: Επιλογή όλων

double **a;
int rows, cols;
int i;
a = malloc(rows*sizeof(double*));
for (i=0; i<cols; i++){
a[i] = malloc(cols*sizeof(double));
}


Και φυσικά το free πρέπει να είναι:
Κώδικας: Επιλογή όλων

for (i=0; i< cols; i++){
free(a[i]);
}
free(a);


YΓ. Καλό είναι αν το χρησιμοποιείς συχνά σε αριθμητικούς υπολογισμούς να δημιουργήσεις ένα νέο struct και με typedef τον τύπο πίνακα, που θα περιλαμβάνει ένα **double, int, int και να δημιουργήσεις τις αντίστοιχες συναρτήσεις για πίνακα πλέον allocate και free. Αν θες περισσότερες πληροφορίες, ρώτα.