Initialisation tableau dynamique

Résolu/Fermé
robocopolo Messages postés 74 Date d'inscription lundi 10 septembre 2012 Statut Membre Dernière intervention 26 novembre 2020 - 26 avril 2013 à 17:26
robocopolo Messages postés 74 Date d'inscription lundi 10 septembre 2012 Statut Membre Dernière intervention 26 novembre 2020 - 26 avril 2013 à 18:04
Bonjour tout le monde, voila j'ai un petit soucis concernant l'initialisation d'un tableau créé dynamiquement.

J'ai un structure Eleve qui contient ceci :
typedef struct eleve {
char nom[30];
char prenom[30];
char classe[10];
float pourcentage;
struct eleve* eleve_suivant;
}Eleve;

Ensuite dans le main, j'ai :

Eleve * e ;

printf("Combien d'etudiant a gerer : ");
scanf("%d%*c", &i);
e = (Eleve*) malloc (sizeof(Eleve) * i);


if (e == NULL){
printf("Erreur lors de l'allocation dynamique !\n");
}

Jusque là, je n'ai pas de soucis, mais je voudrais après cela y mettre dans chaque "cellule" du tableau le nom, le prénom, la classe, le pourcentage et eleve_suivant des valeurs par défaut.

J'ai d'abord penser avec une boucle après le malloc en faisant comme cela :
e[compteur].nom = " ";

Mais cela ne fonctionne pas. Comment faire?

2 réponses

fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 1 835
26 avril 2013 à 18:00
Il faut passer par strcpy :
strcpy (e [compteur].nom, " ");
0
robocopolo Messages postés 74 Date d'inscription lundi 10 septembre 2012 Statut Membre Dernière intervention 26 novembre 2020
26 avril 2013 à 18:04
GE-NI-AL, tout fonctionne.

J'avoue avoir pensé à tout sauf à strcpy. Hahaha.

Un grand merci, je vais pouvoir avancé dans mon travail !! :P
0