Programmation bas niveau (BNV) Help

Cours : Les headers

Pour l'instant nous n'avons utilisé qu'un seul fichier pour mettre nos fonctions mais lorsque l'on va commencer à avoir des architectures un peu plus poussées il va falloir répartir nos fonctions dans différents fichiers.

Nous allons avoir ensuite un problème pour que nos fonctions connaissent les prototypes des fonctions qu'elles vont appeler.

Pour des fonctions de la librairie standard comme scanf() ou printf(), nous appelons des fichiers .h qui nous sont fournis, comme stdio.h ou stdlib.h. Ces fichiers .h sont appelés des fichiers headers. Et nous allons voir comment créer et utiliser les nôtres.

Contenu minimal d'un header

#ifndef __FUNCTIONS_H__ #define __FUNCTIONS_H__ #endif

Le contenu de base d'un fichier .h c'est une sorte de sécurité qui dit :

Si je n'ai pas déjà défini (#ifndef) ce qui suit, définis le (#define) puis indique la fin des définitions (#endif). Tout le contenu de votre header soit se trouver entre #define et #endif.

Définir des fonctions dans un header

fichier function.h

#ifndef __FUNCTIONS_H__ #define __FUNCTIONS_H__ double compute_average(double number1, double number2); #endif

Dans un fichier header, pas besoin de préciser le contenu du corps de votre fonction, uniquement son prototype, suivi d'un ;.

Appeler un fichier header

fichier main.c

#include <stdlib.h> #include <stdio.h> #include "functions.h" int main() { double average = compute_average(12, 16); printf("La moyenne de 12 et 16 est %.2f\n"); exit(0); }

Lorsque vous appelez l'un de vos propres fichiers headers au lieu d'utiliser les <> mettez le chemin de votre fichier entre "".

Exercice : Les headers

22 September 2025