cs_doudou0088
Messages postés12Date d'inscriptionjeudi 9 février 2006StatutMembreDernière intervention 5 juin 2009
-
21 nov. 2007 à 19:37
BunoCS
Messages postés15472Date d'inscriptionlundi 11 juillet 2005StatutModérateurDernière intervention25 mars 2024
-
22 nov. 2007 à 17:02
Bonjour,
Je dois faire un programme en C et j'aurais besoin d'explication et d'aide. Je dois créer un individu.Un individu étant une Liste chaînée de 8 Bit (Chaque Bit est un élément).
Je voudrais savoir si la définition de mes structures et de ma liste chainée et bonne?
Ansi que vous m'aidiez pour l'initialisation d'un individu. J'ai fait la fonction mais je n'arrive pas à changé de bit dans ma liste chainée. Merci
typedef struct elm{
Bit bit;
struct Individu *next;
}element;
typedef struct individu {
element *bitIndiv;
struct individu *next;
}Individu;
typedef Individu * List;
List init_individu(List l)
{
// On crée un nouvel individu
List newIndiv;
newIndiv=(List)malloc(sizeof(Individu));
// On assigne les valeur au nouvel individu
int i;
srand(time(NULL));
for(i=0;i<8;i++)
{
newIndiv->bitIndiv = (int) ((float) rand() / RAND_MAX * 2);
//On assigne l'adresse de l'élément suivant au nouvel élément
newIndiv=newIndiv->next;
}
BunoCS
Messages postés15472Date d'inscriptionlundi 11 juillet 2005StatutModérateurDernière intervention25 mars 2024103 22 nov. 2007 à 17:02
Salut,
Je ne comprends pas trop les liens entre les structures element et individu?
Tu dis qu'un individu est une liste chainée d'élements. Or, dans ta structure element, tu mets un lien vers l'individu suivant. Ce ne serait plutôt l'element suivant?
De plus, dans ta boucle, tu oublies des allocations: genre, tu n'alloues pas le membre bitIndiv. Du coup, ça ne doit pas marcher ton affaire.
Tu regardes et tu nous tiens au courant?
@+
Buno
----------------------------------------
L'urgent est fait, l'impossible est en cours. Pour les miracles, prévoir un délai...
Le site de mon mariage