Langage C (malloc et free)

Résolu
simyamsmasters Messages postés 48 Statut Membre -  
simyamsmasters Messages postés 48 Statut Membre -
Bonjour,

J aimerais savoir comment est ce qu on utilise les allocations dynamiques (malloc) sur des tableaux a deux dimensions . merci de bien vouloir m aider.
--
La grace est trompeuse et la beaute est vaine

4 réponses

  1. fiddy Messages postés 441 Date d'inscription   Statut Contributeur Dernière intervention   1 847
     
    Salut,

    const int lig=5;
    const int col=5;
    
    //initialisation
    int **tab=malloc(lig*sizeof *tab);
    for(int i=0;i<lig;i++)
        tab[i]=malloc(col*sizeof **tab);
    
    //libération des zones allouées
    for(int i=0;i<lig;i++)
        free(tab[i]),tab[i]=NULL;
    free(tab),tab=NULL;
    


    Par ailleurs, n'oublie pas de vérifier que malloc ne renvoie pas NULL.

    Cdlt
    3
  2. simyamsmasters Messages postés 48 Statut Membre 3
     
    S il te plait excuse moi de te deranger une fois de plus mais c est sans aucune modestie que je dirais que je ne comprends rien a ton code. Je t'emprie explique moi comment il fonctionnne. Merci bien
    2
  3. simyamsmasters Messages postés 48 Statut Membre 3
     
    Merci beaucoup
    j ai bien appris grace a ton. Bye

    0