Je suis nouveau en programmation et nouveau sur ce super site

je code un petit programme en C assez simple mais qui pose un problème si j'alloue dynamiquement de la mémoire :
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
typedef struct
{
	int numero;
	char * Ref_Produit;
	char * Designation;
	double Quantite;
	double PU_HT;
	double Taux_TVA;
	double Montant_TVA;
	double Total_TTC;
 
} LigneCommande ;
 
typedef struct
{
	int NombreDeLignesParFacture ;
	char * Date_Facturation;
	char * Ref_Facture ;
	char * Idex_Bon_Commande ;
	LigneFacture * Ligne ;                         /*   Pointeur sur  la structure LigneCommande  */
	double Montant_Total_Facture_HT;
	double Montant_Remise_Facture;
	double Montant_Total_TVA;
	double Montant_Total_TTC;
 
} Facture;
quand j' essaye d'alloué dynamiquement de la mémoire pour la structure Facture et son champ Ligne qui est un pointeur sur la structure LigneCommande j'obtient une erreur lors de compilation

voici le code

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
Facture * tabFacture ;
 
printf("Nombre de facture ?: ");
scanf("%d",&nombreDeFacture);
getchar();  
 
tabFacture = (Facture *) realloc( tabFacture  , (nombreDeFacture + 1 ) * sizeof(Facture));
 
printf("Nombre de lignes par la facture ");
scanf("%d",&nombreDeLignesParFacture);
getchar();
 
 
for( i = 0 ; i < nombreDeFacture ; i++ )		
     facture[i]->Ligne = (LigneFacture*)  malloc(nombreDeLignesParFacture * sizeof(LigneFacture));
Pouvais vous m'aider ?