Bonjour,

Je rencontre un petit problème avec le passage d'une même structure dans différentes fonctions. En effet, j'ai créé un fichier structures.h que voici :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
 
typedef struct clients clients;
struct clients
{
    struct clients *gauche;
    struct clients *droite;
    char *code_client;
    char *nom_client;
    char *mdp_client;
    int solde_client;
};
Mais lorsque je souhaite passer un argument de type "clients" à une fonction externe, je suis obligé d'inclure structures.h dans le fichier qui contient cette fonction sinon ca ne compile pas...

Sauf qu'une fois que j'ai mis l'include, Code::Blocks me dit :

error : previous declaration of "clients" was here (en pointant sur structures.h)

error : redefinition of 'struct clients'
error : redefinition of typedef 'clients'
...

Bref il semble trouver la declaration de ma structure redondante.

Comment puis-je utiliser ma structure à différents endroits ?
(je suis sous, XP avec Code::Blocks)

Merci d'avance