Structure liste chainée (file)

Résolu/Fermé
Muhammad_Alhadi Messages postés 5 Date d'inscription samedi 15 décembre 2012 Statut Membre Dernière intervention 28 décembre 2012 - 15 déc. 2012 à 18:11
Muhammad_Alhadi Messages postés 5 Date d'inscription samedi 15 décembre 2012 Statut Membre Dernière intervention 28 décembre 2012 - 16 déc. 2012 à 17:28
Salut tout le monde,
je me trouve en face d'un tit problème que j'arrive même pas à le comprendre, et pour passer directement au sujet voici le code :
#include <stdio.h>
#include <stdlib.h>
#include "Libra.h"

/*
 * 
 */
int main(int argc, char** argv) 
{
    patient f; 
    int x; 
    char name1[100]="BOB";
    char name2[100]="MAX";
    char name3[100]="ANGEL";
    enqueue(&f, name1, 150);
    enqueue(&f, name2, 321);
    enqueue(&f, name3, 555);
    
    
    display(f);
    
           
    return (EXIT_SUCCESS);
}


"Libra.h"
/* Structure of the element "Patient" */
typedef struct file file;
struct file 

{
        char *name[100];
        int priority;
	file* suiv;
};
typedef file* patient;
patient queue;

/* Functions of queues */

/* Enqueue */
void enqueue(patient *f,char name[100], int newPriority)
{
    patient newf;    
    newf= malloc(sizeof(newf));   
    newf->name[100]= name;
    newf->priority= newPriority;
    newf->suiv= NULL;
    if (*f==NULL)
    {
        *f= newf;
        queue= newf;
    }
    else
    {
        queue->suiv= newf;
        queue= newf;
    }
    
}

/* Display */
void display(patient f)
{
    patient recf;
    recf= f;
    while (recf!= NULL)
    {
        printf("\t%s  %d ", recf->priority);
        recf= recf->suiv;
    } 
}

j'ajoute, le problème c'est lors de l'exécution, et je pense qu'il est en chaine de caractère qui est dans la fonction 'Enqueue'.....
Merci d'avance !! ^_^




A voir également:

1 réponse

Char Snipeur Messages postés 9813 Date d'inscription vendredi 23 avril 2004 Statut Contributeur Dernière intervention 3 octobre 2023 1 298
15 déc. 2012 à 20:18
newf->name[100]= name;
cette instruction, c'est n'importe quoi, ce n'st pas comme ça qu'on copie les chaines en C, mais avec strcpy
0
Muhammad_Alhadi Messages postés 5 Date d'inscription samedi 15 décembre 2012 Statut Membre Dernière intervention 28 décembre 2012
16 déc. 2012 à 17:28
Merci Bcp, vous avez raison je vais me concentrer bien la prochaine fois ^_^
0