print · rss · source

< Les fonctions de manipulation de fichiers | TutoCFrench | Allocations dynamiques >


Le préprocesseur

Notions :

  • préprocesseur
  • #define
  • #include
  • #if, #elif
  • #ifdef, #endif
  • #undef
  • ##

Le préprocesseur est appelé au début d'une phase de compilation pour modifier le source.

La directive #define

La directive #define remplace un symbole par une chaîne dans le code source du programme à chaque fois qu'il apparait :

#define MAX 256
char buffer[MAX];

Le symbole peut être paramètré :

#define max(a,b) ( (a)>(b) ? (a) : (b) )

Il est recommandé de parenthèser les arguments de la chaîne. Expliquez pourquoi l'exemple suivant produit un résultat erroné :

#define carre(a) (a*a)

int main()
{
  int x = 2;
  printf("%d puissance 2 = %d\n", x+1, carre(x+1));

  return 0;
}

La directive #include

La directive #include <fichier> ou #include "fichier" permet d'inclure le code d'un autre fichier dans le code source de notre programme.


< Les fonctions de manipulation de fichiers | TutoCFrench | Allocations dynamiques >

print · rss · source
Page last modified on January 30, 2008, at 02:21 PM