Listes chainées et chaine de caractères

Utilisateur anonyme -  
 Utilisateur anonyme -
Bonjour,

Je me permet de vous demander de l'aide concernant mon petit bout de code. Je n'arrive pas à voir ou se trouve l'erreur. En effet il compile bien sauf que le programme crash à son execution...

Main.c
Liste *initialisation() 
{ 
    Liste *liste = malloc(sizeof(*liste)); 
    users *users = malloc(sizeof(*users)); 

     users->next = NULL; 
     users->name = malloc(strlen(users->name)+1); 
     users->lastname = malloc(strlen(users->lastname)+1); 
     liste->premier = users; 

     return liste; 
} 

void afficher(Liste *liste) 
{ 
    users *actuel = liste->premier; 

    printf("%s", actuel->name); 
    printf("%s", actuel->lastname); 
} 

void ajouter(Liste *liste, char *nom, char *prenom) 
{ 
    users *nouveau = malloc(sizeof(users)); 
    nouveau->name=malloc(strlen(nom) + 1); 
    nouveau->lastname = malloc(strlen(prenom) + 1); 

    nouveau->name = prenom; 
    nouveau->lastname = nom; 
    nouveau->next = liste->premier; 
    liste->premier = nouveau; 
} 

int main(){ 

Liste *list = initialisation(); 

char nom[100] = "Clanet"; 
char prenom[100] = "Benjamin"; 

ajouter(list, nom, prenom); 
afficher(list); 

} 


Chaine.h
#ifndef CHAINE_H_INCLUDED 
#define CHAINE_H_INCLUDED 

typedef struct users users; 
struct users 
{ 
    int id_user; 
    char *lastname; 
    char *name; 
    int birth; 
    char *address; 
    char *phone; 
    char *kind; 
    users *next; 
}; 

typedef struct Liste Liste; 
struct Liste{ 

    users *premier; 

}; 


Liste *initialisation(); 
void afficher(Liste *liste); 
void ajouter(Liste *liste, char *nom, char *prenom); 


#endif // CHAINE_H_INCLUDED 


Merci d'avance pour votre aide,

Ben

A voir également:

1 réponse

Utilisateur anonyme
 
Up!

J'ai besoin d'aide svp
0