4.9 Les macros

Il faut aussi que je vous parle des macros. Ce ne sont pas des fonctions qui vont être compilées mais des instructions que l'on va donner au compilateur. On peut par exemple s'en servir pour changer l'optimisation de la compilation ou afficher des avertissements pendant la compilation.

Hou la la, mais ça à l'air compliqué tout ça.

Non non, il est possible de faire beaucoup de choses avec les macros, mais nous n'allons pas toutes les utiliser tout de suite, il faut juste que vous sachiez que ça permet de faire plein de choses (on verra le détail plus tard). Les macros commencent toutes par un dièse (#) et sont écrite sur une ligne. Nous utiliserons la macro #include pour commencer (d'autre viendrons en temps utiles). Cette macro permet de dire au compilateur :

Dis donc, j'ai besoin des fonctions qu'il y a dans ce fichier, la syntaxe est la suivante :

1
#include <nomDuFichier.h>

Là encore, il y a des choses à dire, comme on l'a dit dans point sur les fonctions, un fichier .h contient les prototypes des fonctions que l'on veut utiliser. Et il y a deux manières de faire une inclusion.

Si vous faîtes :

1
#include <nomDuFichier.h>

Le compilateur va chercher le fichier dans /usr/include ou /usr/local/include, c'est à dire là où sont toutes les fonctions que vous pouvez utiliser (du moins pour l'instant), dans ce cas le compilateur ne va pas chercher le fichier dans votre projet.

Si vous faîtes :

1
#include "nomDuFichier.h"

Le compilateur va chercher le fichier dans votre projet (enfin le dossier dans lequel est le fichier où vous avez fait l'inclusion).

Bien sur si vous faîtes un #include d'une façon et qu'il fallait en faire un d'une autre façon le compilateur va râler, et là il est important de dire une chose que l'on ne dira jamais assez :

LE COMPILATEUR A TOUJOURS RAISON

Donc si il râle c'est de votre faute, et c'est non négociable.