Cours langage C++ le préprocesseur, tutoriel & guide de travaux pratiques en pdf.
Commentaires
C++ autorise deux styles de commentaires: • les commentaires sur une ligne. Ce type de commentaire est introduit par la chaîne de caractères « // » et se termine à la fin de la ligne courante. Ce type de commentaire n’existe que pour C++, et est illégal en C. • les commentaires par blocs. Ce type de commentaire est introduit par la chaîne de caractères « /* » et se termine par la chaîne de caractères «*/». Ceci est le style de commentaires classique C.
Ainsi :
int main(int argc, char *argv[])
{ int N = 20; // Ceci est un commentaire C++ char *message = « Coucou »; /* Afficher n fois « Coucou » sur l’écran. Le présent texte est un commentaire C classique */ for (int i = 0; i < N; i++) cout<<message<<endl;
// Il n’est pas mandatoire de retourner une valeur depuis // main(), mais il est considéré comme préférable de // le faire.
return 0; }
En revanche, la séquence de commentaires suivante est fausse :
// Commentaire C++ /* Commentaire C classique Suite du commentaire C classique Fin du commentaire C classique */
Le début du bloc commentaire C classique n’a pas été vu par le préprocesseur, puisque à l’intérieur d’un commentaire C++. Ajoutons de plus qu’il n’est pas sans autre possible de mettre des commentaires dans des commentaires (nested comments) en C conventionnel ou ANSI. En C++, ou en mélangeant judicieusement les styles de commentaires, on peut écrire:
/* Commentaire C, début de bloc: // Commentaire C++ dans le bloc C // Autre commentaire C++
Fin de commentaire C */ // Nouveau commentaire C++ // Commentaire C++ imbriqué sans effet
Quelle utilité? Lorsque l’on dépanne un programme, il est souvent intéressant de commenter temporairement tout un bloc de code à l’intérieur d’une procédure pour constater l’effet de l’absence de ce code. Si ce bloc est muni de commentaires C (/* … */), il sera malaisé de supprimer ce code, puisqu’on ne peut pas imbriquer des commentaires. Si en revanche, ce bloc de code ne contient que des commentaires C++, vous n’aurez aucun problème. En conclusion, utilisez de préférence le style de commentaires C++ («//») lorsque vous programmez.
Lorsque l’on mélange les styles de commentaires, on peut avoir des surprises. Ainsi :
int deuxOuQuatre = 4 //* Commentaire imbriqué */ 2; ;
initialise deuxOuQuatre à 4 en C++, et à 2 en C.
Il existe néanmoins un cas où il est préférable de recourir à des commentaires en pur style C, et ce sont les fichiers en-tête (.h) que vous définissez comme pouvant être utilisés avec des compilateurs C et C++ indifféremment.