Allocation dynamique

Mathilde -  
 Guki -
Bonjour,

J'ai une petite question sur l'allocation dynamique.

Comment alloue-t-on dynamiquement un tableau à n dimensions ?

Pour une dimension :
c'est, par exemple :
tab=(int *)malloc(MAX*sizeof(int));

Mais pour n dimensions, je ne vois pas.

Merci de votre aide.

Mathilde

1 réponse

  1. Guki
     
    Salut!

    int *n1;
    int *n2;

    /* allocation de 255 entiers 32 bit*/

    n1 = malloc(255 * sizeof(int));

    /* reallocation du tableau */

    n2 = realloc(n1, 65535 * sizeof(int));

    /* pour 3 dimensions */

    int x;
    int y;
    int z;

    int n[x][y][z] = n2;

    ne pas oublier qu'un tableau même sur 3 dimensions est un pointeur à une adresse donnée.
    0