« Programmation C++/Le préprocesseur » : différence entre les versions
Contenu supprimé Contenu ajouté
m Bot: Retouches cosmétiques |
m Robot : ajoute Programmation C++ (livre) |
||
Ligne 163 :
Ici, le résultat obtenu n'est pas forcement celui désiré. <code>DIVISER(4 + 4, 2)</code> sera traduit après la précompilation par <code>4 + 4 / 2</code>. Ceci donne pour valeur 4 + 2, soit 6. Ajouter un maximum de parenthèses permet de s'assurer de la validité de la macro sous plusieurs utilisations différentes. Ainsi, dans l'exemple précédent, une utilisation de parenthèses dans la macro (<code>#define DIVISER(x, y) ((x) / (y))</code>), aurait traduit <code>DIVISER(4 + 4, 2)</code> en <code>((4 + 4) / (2)</code>. Ceci aurait donné comme valeur 8 / 2 = 4, la valeur attendue.
[[Catégorie:Programmation C++ (livre)]]
|