Bonjour tout le monde !
Un petit message qui ne devrait normalement pas vous poser de problèmes, mais qui me pose quelques soucis ...
J'ai deux structures :
Je veux "mallocer" le Tableau d'étudiant (structure auditoire).
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 /*Definition d'un étudiant */ typedef struct { char matricule[25]; /* Matricule unique. */ char nom[20]; char prenom[20]; Adresse adr; double tabCotes[5]; double moyennePourcentage; }Etudiant; //Definition d'une classe typedef struct { int nbEtudiants; Etudiant *classe; // Classe d'étudiant. (Tableau) int compteurMatricule; }Auditoire;
Pour cela, je lis les éléments présents dans un fichier binaire, dont voici le code source :
Je pensais donc Mallocer le tablea d'étudiant en faisant, dans la méthode chargerEtudiants :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27 void chargerEtudiants(Auditoire *auditoireA) { FILE* listeEtudiants = NULL; listeEtudiants = fopen(DOC, "rb"); fread(auditoireA, sizeof(Auditoire), 1, listeEtudiants); fclose(listeEtudiants); printf("Chargement effectue des étudiants en memoire effectue !\n"); printf("il y a %d etudiants dans le fichier.\n\n", auditoireA->nbEtudiants); /* Initialisation du compteur de matricule (HE201XXX) au nombre d'étudiants présents EX : S'il y a déjà 3 étudiants dans le fichier, le compteur sera à 201003 Car le prochain étudiant aura ce matricule là. */ auditoireA->compteurMatricule = 201000 + auditoireA->nbEtudiants + 2; system("PAUSE"); afficherMenu(auditoireA); }
Malheureusement, cela ne fonctionne pas, et je ne sais pas trop comment m'y prendre ...
Code : Sélectionner tout - Visualiser dans une fenêtre à part auditoireA->classe = malloc(auditoireA->classe, sizeof(auditoireA->nbEtudiants * Etudiants
En espérant avoir une réponse de votre part,
Je vous souhaite une excellente journée !
Partager