linux user group brescia

immagine del castello

Archivio della mailing list

Array e malloc

Carlo Mor jenawork a iol.it
Mar 7 Maggio 2002 13:30:49 UTC

Maurizio Paolini wrote:

>No.  Attenzione che in C gli array a piu' di una dimensione hanno comunque
>un solo livello di indirezione, ovvero "jolly" e' in sostanza un puntatore
>a una "struct orso".  Quindi "struct orso *jolly".
>
Sei sicuro?
Guarda che un array di array e' consentito ed ha doppia indirezione
pensa al classico
int main (int argc, char **argv)

>
>Deve essere allocata con qualcosa del tipo:
>
>   jolly= (struct orso *) malloc (dim1*dim2*dim3*sizeof(struct orso));
>
>dove dim1, dim2, dim3 sono i tre valori massimi dei 3 indici. 
>(Pero' stai attento, e' pericoloso avventurarsi con le matrici a piu' indici:
>e' facile sbagliarsi)
>
Il modo piu' efficiente e' quello proposto da Bauno, che effettivamente 
uso anch'io in C++ e che e' velocissimo
(array monodimensionale di dimensione pari al prodotto delle dimensioni)

>
>mp
>
>>Carlo
>>
>





Maggiori informazioni sulla lista Lug