Bonjour,
Cela fait plusieurs jours que je tente désespérément de régler un problème avec une structure en vain. Alors, je me tourne vers vous aujourd'hui. Voilà un peu le topo :
J'ai ces structures plus ou moins dépendantes entre elles :
J'ai cette fonction qui normalement a pour simple but de créer un EnsTabSymb :
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 typedef struct symb{ char *name; enum {var,fonction,parametre,tableau} nature; enum {entier, reel, chaine } type; int nb_parametres; int borne_sup; int nb_dimensions; int imbrication; int bloc; }Symb; typedef struct tabSymb{ Symb tds[20]; int num_bloc; int num_imbric; int nb_symb; }TabSymb; typedef struct ensTabSymb{ TabSymb ens_tds[50]; int nb_tables; }EnsTabSymb;
2 problèmes :
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 EnsTabSymb *creerEnsTDS(){ EnsTabSymb *ens = (EnsTabSymb *) malloc( sizeof(EnsTabSymb)); if(ens==0){ printf("Erreur allocation ensemble des tables des symboles\n"); exit(1); }else{ ens->ens_tds=(TabSymb *) malloc(50*sizeof(TabSymb)); ens->nb_tables=0; } return ens; }
- avec le malloc j'ai l'erreur suivante :
- et tout simplement lors de l'appel de ma fonction comme ceci :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 erreur: incompatible types in assignment
j'ai cette erreur :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 EnsTabSymb* ens_tables_symboles=creerEnsTDS();
Voilà , si quelqu'un peut me guider un peu ce serait cool !
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 erreur: un élément de l'initialisation n'est pas une constante
Partager