« Structures de données en C/Les listes simples » : différence entre les versions
Contenu supprimé Contenu ajouté
Ligne 27 :
La création d'une liste d'un élément demande d'allouer de la mémoire au gestionnaire de mémoire. Il convient de toujours tester le retour d'un <code>malloc</code> car la documentation dit que le retour peut être <code>NULL</code> si le système ne dispose plus de mémoire suffisante. Si l'allocation a réussi, il n'y a plus qu'affecter les champs de la structure <code>List</code>
List *list_create (<font color="blue">void</font> *data)▼
{▼
▲List *list_create (void *data)
List *list = malloc (<font color="blue">sizeof</font> (*list)); <font color="green">/* allocation (en vert sur le diagramme) et affectation à la variable list (en bleu) */</font>▼
▲{
<font color="blue">if</font> (list) <font color="green">/* si l'allocation a réussi */</font>▼
▲ List *list = malloc (sizeof (*list)); /* allocation (en vert sur le diagramme) et affectation à la variable list (en bleu) */
{▼
▲ if (list) /* si l'allocation a réussi */
list->
▲ {
list->
}▼
▲ list->next = NULL; /* affectation du champ next à la liste vide */
<font color="blue">return</font> list; <font color="green">/* retour de la liste (correctement allouée et affectée ou NULL) */</font>▼
▲ }
}▼
▲ return list; /* retour de la liste (correctement allouée et affectée ou NULL) */
▲}
[[Image:Structures_de_données_en_C-list_create.png|108 px|Création d'une liste d'un élément]]
|