« Introduction au langage C/Le préprocesseur » : différence entre les versions

Contenu supprimé Contenu ajouté
Thierry46 (discussion | contributions)
→‎#ifndef : Complément
Thierry46 (discussion | contributions)
Transfert de l'exercice dans le Wikibook b:Exercices en langage C/Préprocesseur
Ligne 271 :
 
====Inclusions multiples====
Si plusieurs fichiers d'entête inclus demandent tous les deux d'inclure le même troisième. Toutes les définintionsdéfinitions, prototypes... contenues dans ce dernier fichier vont être répétés dans le résultat produit par le préprocesseur.
 
=== TP1 : compilation conditionnelle ===
Cet exercice est très simple mais permet de comprendre l'utilité de la compilation conditionnelle.
==== TP1 : Enoncé ====
Coder hello.c de telle manière que le programme affiche "Hello World" si j'ai spécifié WORLD lors de la compilation ou "Hello Fof" si j'ai spécifié FOF lors de la compilation. Si jamais, je n'ai rien spécifié, alors le programme affichera "Hello Nobody".<br />
Compilation gcc : gcc -D NAME hello.c -o hello
 
==== Corrigé du TP1 : compilation conditionelle ====
<source lang="C">
#include <stdio.h>
 
int main()
{
#if WORLD
printf("Hello World\n");
 
#elif FOF
printf("Hello Fof\n");
 
#else
printf("Hello Nobody\n");
 
#endif
}
</source>
 
== Autres directives ==
Ligne 325 ⟶ 300 :
 
aura pour effet que le code exécutable de fonction1 et fonction2 sera placé dans un segment de nom SEGA tandis que celui de fonction3 sera placé dans un segment de nom SEGB.
 
== TP ==
{{loupe|amorce=Faîtes les exercices du WikiLivre |b:Exercices en langage C/Le préprocesseur{{!}}Exercices en langage C sur le préprocesseur}}
 
[[Catégorie:Langage C]]