Fiche de révision : Initiation à la programmation C++

Plan du Cours

  1. Origines et normes du C++
  2. Programme source et commentaires
  3. Traduction et exécution du programme
  4. Compilation et édition de liens
  5. Erreurs et débogage
  6. Variables types et constantes
  7. Expressions et opérateurs
  8. Flux fichiers et affichage
  9. Portée et masquage des variables

1. Origines et normes du C++

★ À maîtriser

  • Le langage C a été associé à la programmation structurée et à la création d’UNIX en 1973 par B. Kernighan et D. Ritchie, tandis que le C++ a été conçu par B. Stroustrup comme un langage orienté objet dérivé de la syntaxe du C. — B. Kernighan & D. Ritchie

Compléments

  • Les principales normes C++ citées sont:
    • C++98
    • C++03
    • C++11
    • C++14
    • C++17
    • C++20
    • C++23

Astuce mémo

C structuré → C++ objet → normes 1998, 2011, 2014, 2017, 2020

2. Programme source et commentaires

Notions clés & Définitions

  • Programme source : Texte dont la structure respecte celle imposée par un langage de programmation, ici le C++.

★ À maîtriser

📌 En C++, une instruction se termine par un point-virgule, tandis qu’un bloc regroupe plusieurs instructions entre accolades pour être traité comme une seule grosse instruction.

Compléments

  • Les commentaires C++ sont ignorés par le compilateur et s’écrivent avec // jusqu’à la fin de la ligne ou avec /* et */ sur plusieurs lignes.

Astuce mémo

Un texte source annoté, dont les commentaires disparaissent avant l’exécution

3. Traduction et exécution du programme

★ À maîtriser

📌 Un interpréteur traduit progressivement le programme, par exemple ligne par ligne, et exécute chaque partie avant de passer à la suivante, tandis qu’un compilateur traduit l’intégralité du programme en une fois dans un fichier de code.

Compléments

  • Le microprocesseur doit recevoir des instructions sous une forme numérique codée qui dépend notamment de son architecture, comme Intel, ARM, PowerPC ou MIPS.

Astuce mémo

Interpréteur : traduit puis exécute ; compilateur : traduit tout puis exécute

4. Compilation et édition de liens

★ À maîtriser

  • 🔄 La transformation complète comprend:

    1. le preprocessing
    2. la compilation proprement dite
    3. l’assemblage
    4. l’édition de liens
  • La commande g++ -Wall -Wfatal-errors -c HelloWorld.cpp produit le fichier objet HelloWorld.o à partir du fichier source.

Compléments

  • La commande g++ -Wall -o HelloWorld.exe HelloWorld.o effectue l’édition de liens et produit l’exécutable HelloWorld.exe.

Astuce mémo

Prétraiter → compiler → assembler → lier

5. Erreurs et débogage

★ À maîtriser

📌 Une erreur de compilation empêche généralement la production du fichier objet, tandis qu’un warning permet à la compilation de se terminer mais signale une correction nécessaire.

  • Pour déboguer, il faut corriger la première erreur détectée puis recommencer la compilation, l’édition de liens et l’exécution jusqu’à disparition des erreurs visibles.

Compléments

  • Une erreur d’exécution peut subsister même lorsque le compilateur ne signale plus rien, car elle peut provenir de l’algorithme lui-même, d’une division par zéro ou d’une erreur de l’utilisateur.

Astuce mémo

Première erreur corrigée → recompilation → liaison → exécution

6. Variables types et constantes

Notions clés & Définitions

  • Variable : Espace de la mémoire de l’ordinateur permettant de conserver une valeur pour un usage ultérieur.

★ À maîtriser

  • 🔄 Pour créer une variable, il faut: choisir son type, choisir un nom valide, l’initialiser, modifier éventuellement sa valeur par affectation

📌 L’opérateur = affecte la valeur située à droite à la variable située à gauche, tandis que l’opérateur += ajoute la valeur de droite à la valeur déjà contenue à gauche.

  • Les types cités comprennent notamment:
    • bool
    • char
    • short
    • int
    • long long
    • float
    • double
    • string

📌 Une constante déclarée avec const doit être initialisée lors de sa création et sa valeur ne peut ensuite pas être modifiée.

Compléments

  • Les noms de variables peuvent contenir des lettres, des chiffres et le caractère _, mais ne peuvent pas commencer par un chiffre ni contenir d’espace.

Astuce mémo

Variable modifiable contre constante initialisée une seule fois

7. Expressions et opérateurs

Notions clés & Définitions

  • Expression : Formule composée d’opérateurs et d’opérandes, dont l’évaluation produit une valeur et un type.

★ À maîtriser

  • L’opérateur = réalise une affectation, tandis que == teste l’égalité entre deux valeurs et produit un résultat booléen.

  • Les opérateurs logiques &&, ||, ^^, !, == et != s’appliquent à des valeurs booléennes, tandis que &, |, ^ et ~ s’appliquent bit à bit à des entiers.

  • Les opérateurs placés sur une ligne plus haute dans la table des priorités sont évalués avant ceux des lignes plus basses, et les parenthèses permettent de forcer ou clarifier l’ordre d’évaluation.

Compléments

📐 Formule — Pour une équation du second degré, le discriminant se calcule par Δ=b2−4ac\Delta=b^2-4ac.

  • Les décalages bit à bit << et >> correspondent respectivement à une multiplication ou une division par une puissance de deux lorsque leurs opérandes sont entiers.

Astuce mémo

= affecte, == compare ; logique booléenne, bit à bit numérique

8. Flux fichiers et affichage

★ À maîtriser

  • Les trois flux standards sont:
    • cin
    • cout
    • cerr

📌 L’opérateur >> permet de lire depuis un flux d’entrée comme cin, tandis que l’opérateur << permet d’écrire vers un flux de sortie comme cout.

📌 Le type ifstream sert à lire des valeurs depuis un fichier, tandis que le type ofstream sert à écrire des valeurs dans un fichier.

Compléments

📌 Après une lecture dans un flux de fichier, la fonction fail() permet de vérifier si au moins une lecture a échoué.

  • Les manipulateurs cités comprennent notamment:
    • endl
    • setw(x)
    • setfill(c)
    • left
    • right
    • fixed
    • scientific
    • flush

Astuce mémo

Lire ou écrire → vérifier fail() → formater la sortie

9. Portée et masquage des variables

Notions clés & Définitions

  • Portée : Zone du programme dans laquelle cette variable peut être utilisée.

★ À maîtriser

📌 Lorsqu’une variable locale porte le même nom qu’une variable extérieure, la variable la plus proche masque la variable extérieure dans son bloc.

Compléments

  • Dans l’exemple du cours, la variable globale i vaut 1, puis les variables locales homonymes valent successivement 20 dans un bloc et 300 dans un sous-bloc.

Astuce mémo

Des blocs imbriqués où chaque variable intérieure peut cacher celle de l’extérieur

Tableaux de synthèse

Interpréteur et compilateur

CritèreInterpréteurCompilateur
TraductionProgressiveIntégrale en une fois
ExécutionAprès chaque traductionAprès production du code
Exemples du coursPHP, Bash, JavaScript, SchemeC, C++, Pascal

Types de flux

FluxRôleOpérateur principal
cinEntrée standard>>
coutSortie standard<<
cerrSortie standard d’erreur<<
ifstreamLecture depuis un fichier>>
ofstreamÉcriture dans un fichier<<

Teste tes connaissances

Teste tes connaissances sur Initiation à la programmation C++ avec 23 questions à choix multiples et corrections détaillées.

1. Quelle distinction décrit correctement le rapport entre le C et le C++ ?

2. Quelle liste présente les principales normes C++ citées dans l’ordre chronologique ?

Faire le QCM →

Révisez avec les flashcards

Mémorisez les concepts clés de Initiation à la programmation C++ avec 47 flashcards interactives.

Qui a associé le langage C à UNIX en 1973 ?

B. Kernighan et D. Ritchie.

Quel type de langage est le C++ conçu par B. Stroustrup ?

Un langage orienté objet dérivé du C.

Quelles sont les principales normes du C++ depuis 1998 ?

C++98, C++03, C++11, C++14, C++17, C++20 et C++23.

Voir les flashcards →

Cours similaires

Crée tes propres fiches de révision

Importe ton cours et l'IA génère fiches, QCM et flashcards en 30 secondes.

Générateur de fiches