Init un tableau de struct

Résolu
larcan57 Messages postés 13 Date d'inscription mardi 29 mars 2005 Statut Membre Dernière intervention 9 avril 2009 - 9 avril 2009 à 11:19
Pistol_Pete Messages postés 1053 Date d'inscription samedi 2 octobre 2004 Statut Membre Dernière intervention 9 juillet 2013 - 9 avril 2009 à 11:28
Bonjour,
Encore une question de struct...

Soit ma structure:
struct test {char* test_id; char* tab[]; };

j'initialise une struct:
test nouveauTest = test();
nouveauTest .test_id = "0";
nouveauTest .tab[0] = "a";
nouveauTest .tab[1] = "aa";

Puis pour une fonction j'ai besoin de passer un tableau de cette structure:
test tabStruct[1]={nouveauTest};

Hors à l'initialisation là il me met une erreur: "les tableaux d'objets contenant des tableaux d'indice zéro ne sont pas conformes"
Quelqu'un aurait-il une idée du pourquoi? Et comment faire pour avoir un tableau de struct?
( je ne veux pas un tableau de "test*" mais bien de "test".)

Merci d'avance de vos réponses ;)

1 réponse

Pistol_Pete Messages postés 1053 Date d'inscription samedi 2 octobre 2004 Statut Membre Dernière intervention 9 juillet 2013 7
9 avril 2009 à 11:28
Salut
Ton problème vient surement du faite que tu déclares tes tableaux:
char* test_id;
char* tab[];

La tu as juste déclarer un pointeur et toi tu y stocke des char...
Il faut que tu alloue de la mémoire dynamique ou plus simplement que tu fasses
char  test_id[20];

char  tab[50][50];
dans ta struct

et dans ton main
strcpy pour copier une chaine de caractère dans une autre
A+

____________________________________________________________________________
Mon site internet :  
http://ImAnalyse.free.fr
3
Rejoignez-nous