Types de fichiers
Il y a deux types de fichiers dans un programme C :
- les fichiers d'entête, suffixés par .h
- les fichiers sources contenant les définitions des
fonctions,
suffixés par .c.
Fichiers d'entête
Un exemple est donné par conversion.h.
Un fichier d'entête contient les déclarations des
fonctions et variables qui doivent être utilisées à
l'extérieur du fichier .c ou elles sont definies. Il peut
également contenir des déclarations de types et des
définitions de structures lorsque c'est nécessaire, ainsi
que des directives pour définir des pseudo-constantes (#define).
Pour éviter les inclusions multiples, il est recommandé
d'encadrer le contenu du fichier par une directive similaire à
l'exemple suivant
#ifndef MON_FICHIER_H
#define MON_FICHIER_H
...
#endif
Fichiers source
Un exemple est donné par conversion.c.
Un fichier source peut être découpé avec les
parties suivantes :
- Inclusion des fichiers d'entête standards, entre chevrons
'<' et '>'. Exemple :
#include <stdio.h>
- Inclusion des fichiers d'entêtes locaux, entre guillemets
'"'. Exemple :
#include "conversion.h"
- Déclaration des structures et types locaux au fichier.
- Déclaration des fonctions locales au fichier,
préfixées par le mot clé static. Exemple :
static int
ma_fonction_locale(double x);
- Définition des variables externalisées. Attention, ce type de variable est
à éviter car il nuit à l'encapsulation et donc
rend plus difficile la maintenance. Exemple :
double precision = 1e-10;
- Définition des variables communes à toutes les
fonctions du fichier, préfixées du mot-clé static. Exemple ;
static int fact_10 = 3628800;
Si une variable ne doit pas être modifiée, il
convient de la déclarer constante à l'aide du
mot-clé const.
const static int fact_10 =
3628800;
- Définition des fonctions externes et statiques.