Préprocesseur
De cppreference.com
< cpp
Le préprocesseur est exécuté avant que la compilation ne commence. Le résultat du prétraitement est un seul fichier "source intermédaire" qui est ensuite passé au compilateur réel.
[modifier] Directives
Les directives de prétraitement contrôlent le comportement du préprocesseur. Chaque directive occupe une ligne et a le format suivant :
- commence par le caractère
# - l'instruction pré-traitement (un parmi
define,undef,include,if,ifdef,ifndef,else,elif,endif,line,error,warning,pragma) - des paramètres (dépend de l'instruction)
- saut de ligne
La directive nulle (# suivie d'un saut de ligne) est autorisée et n'a pas d'effet.
[modifier] Capacités
Le préprocesseur a les capacités de traduction du fichier source :
- compilation conditionnelle de parties de fichier source (contrôlé par les directives
#if,#ifdef,#ifndef,#else,#elifet#endif). - remplacement de macros de texte (contrôlé par les directives
#defineet#undef, et les opérateurs#et##) - inclusion d'autres fichiers (contrôlé par la directive
#include) - provoquer un avertissement (contrôlé par la directive
#warning) - provoquer une erreur (contrôlé par la directive
#error)
Les aspects suivants du préprocesseur peuvent être contrôlés :
- comportement défini par l'implémentation (contrôlé par la directive
#pragma) - nom de fichier et les informations de ligne à la disposition du préprocesseur (contrôlé par la directive
#line)

