conflicting types for 'buid_hash_tab'

Le
unbewusst
gcc me donne cette erreur :
systemprofile.c:71: error: conflicting types for 'buid_hash_tab'
systemprofile.h:20: error: previous declaration of 'buid_hash_tab' was
here

alors que :
dans "systemprofile.c:71" :
int buid_hash_tab( char **keys,
char **values,
int *tab_len,
int *k_len,
int *v_len,
unsigned int *lines_nbr,
unsigned int *empty_lines_nbr,
struct n_list *sph,
Node *rpathes,
Node *epathes )

et dans "systemprofile.h:20" :
int buid_hash_tab( char **,
char **,
int *,
int *,
int *,
unsigned int *,
unsigned int *,
struct n_list *,
Node * ,
Node *);


donc dans l'en-tte la dclaration des paramtres est "anonyme" c'est
ce qui ne va pas ???
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Pierre Maurette
Le #996261
gcc me donne cette erreur :
systemprofile.c:71: error: conflicting types for 'buid_hash_tab'
systemprofile.h:20: error: previous declaration of 'buid_hash_tab' was
here

alors que :
dans "systemprofile.c:71" :
int buid_hash_tab( char **keys,
char **values,
int *tab_len,
int *k_len,
int *v_len,
unsigned int *lines_nbr,
unsigned int *empty_lines_nbr,
struct n_list *sph,
Node *rpathes,
Node *epathes )

et dans "systemprofile.h:20" :
int buid_hash_tab( char **,
char **,
int *,
int *,
int *,
unsigned int *,
unsigned int *,
struct n_list *,
Node * ,
Node *);


donc dans l'en-tête la déclaration des paramètres est "anonyme" c'est
ce qui ne va pas ???


Vous avez peut-être un problème d'ordre d'include. Peut-être que quand
vous aurez résolu le warning de votre autre message - parce qu'il faut
le résoudre - ces erreurs disparaîtront.

Avez-vous bien:
#include "hash_tab.h"
dans systemprofile.h ?

Je ne suis pas très à l'aise avec ces histoire d'include. Mais je m'en
tiens à deux règles:
- mettre toujours des guards.
- inclure tout ce qui est nécessaire et uniquement ce qui est
nécessaire à chaque fichier.

Je ne suis pas sûr d'avoir raison, mais ici, je mettrais le #include
"hash_tab.h" à la fois dans systemprofile.h et systemprofile.c, je ne
compterais pas sur un #include "systemprofile.h" dans systemprofile.c

--
Pierre Maurette

Thierry B.
Le #996260
--{ Pierre Maurette a plopé ceci: }--

- mettre toujours des guards.


Ben justement, une question.

Quelle est la méthode canonique pour ces "gards" ?

(à part le chapeau à poils)


--
Laquelle sortie sinusoïdale est full-compliant avec les
barrel-shifters codés en 12ax7. C'est évident.
Qui a dit que le vocabulaire informatique était horrible ?


Stephane Legras-Decussy
Le #996093
"Thierry B."
Ben justement, une question.

Quelle est la méthode canonique pour ces "gards" ?


#ifndef H_TOTO
#define H_TOTO

blabla...

#endif

Thierry B.
Le #996091
--{ Stephane Legras-Decussy a plopé ceci: }--

Ben justement, une question.

Quelle est la méthode canonique pour ces "gards" ?


#ifndef H_TOTO
#define H_TOTO

Oké. avec TOTO pour toto.h ?



--
AIX, c'est comme PL/I. Un nouveau patch à chaque nouveau besoin.
J'espère au moins qu'ils ont fini par virer superzap ;-)
--{ JKB renie le siècle dernier }--


unbewusst
Le #996090
On 26 août, 19:51, "Thierry B."
--{ Stephane Legras-Decussy a plopé ceci: }--

Ben justement, une question.

Quelle est la méthode canonique pour ces "gards" ?


#ifndef H_TOTO
#define H_TOTO


Oké. avec TOTO pour toto.h ?

--
AIX, c'est comme PL/I. Un nouveau patch à chaque nouveau besoin.
J'espère au moins qu'ils ont fini par virer superzap ;-)
--{ JKB renie le siècle dernier }--




ok merci pour cette clarification...



Thierry B.
Le #996087
--{ unbewusst a plopé ceci: }--

#ifndef H_TOTO
#define H_TOTO


Oké. avec TOTO pour toto.h ?

ok merci pour cette clarification...


Euh, c'est qui exactement que tu remercie, là ?


--
tu fais comme moi : Tu postes ce que tu veux et tu
ignores les râleurs... Raleurs qui assez souvent ne
s'expriment que pour râler... Ils aiment cela !
--{ Ludovic, in fr.comp.materiel.optimisation }--



Publicité
Poster une réponse
Anonyme