Bonsoir
Est ce quelqu’un pourrait voir et me dire comment améliorer ces codes C svp ?
Je bosse un peu sur les listes chainées.
Merci
[code]#include “lc.h”
int append_f(int_element **liste, int val)
{
int_element new_element = (int_element) malloc( sizeof(int_element));
if(!new_element) exit(EXIT_FAILURE);
new_element->val = val;
new_element->suivant = *liste;
*liste = new_element;
return 1;
}
int pop_f(int_element **liste)
{
int_element *suppr = (*liste);
*liste = (*liste)->suivant;
free(suppr);
return 1;
}
void affiche_f(int_element *liste)
{
while(liste != NULL)
{
printf("%x <- Addresse : %x -> valeur : %d\n", liste->suivant, liste, liste->val);
liste = liste->suivant;
}
}
int clear_f(int_element **liste)
{
int_element *suppr = NULL;
while(*liste != NULL)
{
*suppr = (*liste);
*liste = (*liste)->suivant;
free(suppr);
}
return 1;
}
[/code]
[code]#ifndef LC_H
#define LC_H
/**
- \file lc.h
- \version 0.1
- \date 01/03/2015
*/
#include <stdio.h>
#include <stdlib.h>
#include <errno.h>
#include <string.h>
/* le type int_element */
typedef struct int_element
{
//struct int_element *precedent;
int val;
struct int_element *suivant;
} int_element;
int append_f(int_element **liste, int val);
void affiche_f(int_element *liste);
int pop_f(int_element **liste);
#endif
[/code]