Je me suis dit que peut être il y a des gens qui s'y connaissent un peu ici. L'idée de ce truc (en fait je m'entraine pour un partiel :/ ) c'est de faire un tableau dynamique d'étudiants, de le remplir en tapant au clavier et qu'il nous l'imprime ensuite.
code : Tout sélectionner
#include <stdio.h>
#include <stdlib.h>
int main ()
{
int i ;
int a ;
char nom[20];
typedef struct { int age ;
char nom[20];
} etudiant;
//tableau dynamique d'étudiants
printf("tableau de combien ?\n");
int nombre=0;
scanf("%d", &nombre);
etudiant * tab;
tab =(etudiant*)malloc(nombre*sizeof(etudiant));
//remplissage du tableau
for(i=0;i<nombre;i++)
{ printf("numero %d: \n\n", i);
printf("age ?\n");
scanf("%d", &a);
tab[i].age=a;
printf("nom ?\n");
scanf("%s", nom);
tab[i].nom=nom; //erreur : "incompatible types in assignment" : WTF ?
}
//impression tu tableau
for (i=0;i<nombre;i++)
printf("etudiant #%d : age : %d\n, nom : %s",
i, tab[i].age, tab[i].nom);
}Merci pour ton aide précieuse.
edit :
Bon en fait ça marche avec
printf("nom ?\n");
scanf("%s", tab.nom);
à la place de
printf("nom ?\n");
scanf("%s", nom);
tab.nom=nom;
pourtant ça revient exactement à la même chose, ETRANGE.