bonjour,j'aimerais diviser mon programme en 3 fichiers , seulement le compilo m'indique que j'ai redefinie une variable alors que c'est pas le cas .

le main
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
#include <stdio.h>
#include"binaire_complet.h"
 
 
int main(){
    prefixeC(0,0);
 
    return 0;
}
le .h
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
#ifndef BINAIRE_COMPLET_H_INCLUDED
#define BINAIRE_COMPLET_H_INCLUDED
 
 
#define NILE -1
 
 
/** tableau statique representant un tableau binaire complet**/
const char *arbre_complet[]={"alban","berthe","camille","david","eugenie","fernand","ginette"};
/** taille du tableau **/
int taille_arbre_complet = 7;
 
int gauche(int i);
int droite(int i);
void prefixeC(int racine,int niveau);
 
 
#endif
le .c
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
#include<stdio.h>
#include"binaire_complet.h"
 
 
 
int gauche(int i){
    return (2*i+1)<taille_arbre_complet? 2*i+1 : NILE;
}
int droite(int i){
    return (2*i+2)<taille_arbre_complet ? 2*i+2 : NILE;
}
void prefixeC(int racine,int niveau){
    int i=0;
    if( racine != NILE ){
        for(i=0;i<niveau;i++) printf("   ");
        printf("%s\n",arbre_complet[racine]);
        prefixeC( gauche(racine) , niveau+1);
        prefixeC( droite(racine) , niveau+1);
    }
}
-si je met les variables gloables arbre_complet et taille_arbre_complet dans le .c sa marche alors que moi j'aimerais les definir dans le .h .
-si je les met en static sa marche aussi et je ne sais pas pourquoi .
-ces noms de variables sont uniques dans mon projets .
est ce que quelqu'un pourrais m'aider svp ?