Linker en c complilateur

Signaler
Messages postés
69
Date d'inscription
lundi 10 février 2003
Statut
Membre
Dernière intervention
29 août 2012
-
Messages postés
2671
Date d'inscription
vendredi 25 janvier 2002
Statut
Membre
Dernière intervention
6 février 2013
-
Bonjour ,

un truc que j'aimerais comprend avec le linker et la programmation segmenté (fichier h  et c)
lorsque j'inclut une grosse lib (genre windows.h) dans plusieurs fichiers
 dois-je l'inclure dans le .h ou dans le .c (les deux marches)
si je l'inclut dans le .h dois-je toujours inclure tous mes lib(stdlib stdio) dans le .h et n'inclure que mon lien dans mon .c

je m'explique:
j'ai toto.h et toto.c

dans toto.h
#include <stdlib.h>
#include <stdio.h>
#include <windows.h>

dans toto.c
#include "toto.h"

ca c'est correct?

deuxieme partie:
----------------
si j'ai plusieur fichier utilisant #include <windows.h>
mon exe sera t'il plus lourd que si je met toutes les fonctions utilisant windows.h dans un seul fichier

en gros c'est quoi une bonne programtion au niveau des includes
Desolé si je ne suis pas trop comprehensible,mais c'est tellement flou dans ma tete
ca ne m'empeche pas de programmer,mais je voudrait faire propre

merci

1 réponse

Messages postés
2671
Date d'inscription
vendredi 25 janvier 2002
Statut
Membre
Dernière intervention
6 février 2013
2
Salut,
Tes includes sont tout à fait correct. En général on ce sert des .h pour mettre les prototypes, puis les .c pour implémenter le corps de ces prototypes.
Sinon pour ce qui est de la taille de ton exe, aucun soucis de ce coté la, le compilateur n'incluera pas 50 fois la lib.

Si tu veux, les directive #include permettent au linker d'établir le lien entre les appels de fonction externe à ton code; Une fois la fonction référencé par le linker il s'en reservira pour les autres partie de ton code appellant cette fonction.

Shell