Qu'est-ce que c'est un fichier *.h ?

_Pol_ -  
 Devlopper :D - 3 janv. 2018 à 21:01
Bonjour a tous programmeurs en délire... Je vous écris pour vous poser une petite question peut être simple pour vous, les chevronnés de l'info, mais pour moi c'est tout un mal de tête que je me donne chaque soir et ce, depuis 3 jours déjà. Alors, voici ma petite, simple, fastoche question... :

Qu'est-ce que c'est un fichier *.h ? Et comment peut-on s'en servir ?

Le langage de programmation est en C++ [avec le programme Visual C++ .NET], j'ai un vieux PC [autant qu'il fonctionne...] : Pentium 560 Mhz, 256 Mb, 40 Gb HD... Avec Windows XP Édition familiale.

Merci d'avance et puis... passez une agréable journée =D
Votre enchanteur et parfois ridicule qui recule, Paul.
A voir également:

2 réponses

kilian Messages postés 8732 Date d'inscription   Statut Modérateur Dernière intervention   1 526
 
Salut,

h c'est le diminutif de header (en-tête).
Un fichier header c'est là qu'on defini habituellement le prototype des fonctions. C'est aussi là qu'on defini les types personnalisés, les structures et les classes.

Ca sert à quoi? Premièrement à mieux s'y retrouver, on trouve la référence de ce qu'il y a dans un fichier c ou cpp dans le header qu'il inclut.

Mais aussi, ça permet de signaler l'existence d'une fonction pour l'utiliser avant de l'avoir définie.

Exemple:
Protoype d'une fonction bidule:
void bidule(char *truc);

Si ce truc est dans le header d'un fichier c (donc dans un fichier *.h inclu dans le fichier c, alors tu peux utiliser cette fonction même si sa définition est faite plus bas dans le fichier c ou encore dans un autre fichier c lié avec celui ci.
Tu pourras donc retrouver sa définition ailleurs:
void bidule(char *truc)
{
        printf("%s",truc);
}

J'ai du mal à expliquer, alors dis le moi si tu n'as pas compris.
50
HerveB
 
Super explication !
Merci.
0
Xx_hugo_xX
 
je vous conseille de suivre le cours de Open Classroom
il est tres detaillé et vous explique tout de a à z (mais il est tres long)
0
Devlopper :D
 
merci :D
0