View Single Post
Old 29-06-2006, 18:29   #1
Gandalf_BD
Senior Member
 
L'Avatar di Gandalf_BD
 
Iscritto dal: Jun 2004
Messaggi: 760
[C] la "calloc" patisce il caldo???

Ciao a tutti...
ho un problemino stranissimo nell'allocazione di una matrice di int...
ecco il codice:
Codice:
...
dipendenze = (int **) calloc(n_ops, sizeof(int *));
for(i = 0; i < n_ops; i++)
  dipendenze[i] = (int *) calloc(n_ops, sizeof(int));
...
ora... ho controllato con gdb che il valore di n_ops fosse giusto, e così è...
n_ops vale 7...
secondo voi, com'è possibile che la calloc allochi la memoria come se n_ops valesse solo 4?????
se io, dopo aver allocato la matrice, faccio un bel "print sizeof(dipendenze)" il risultato è 4 e non 7 come dovrebbe essere...
scommetto che è un errore stupido (in genere è sempre così ), ma non riesco proprio a vederlo...

secondo voi dove sbaglio?

grazie
__________________
Gandalf_BD
--------------------------------------------
"When you aim at perfection, you discover it's a moving target"
Gandalf_BD è offline   Rispondi citando il messaggio o parte di esso