Écrivez votre premier programme C++

C++Beginner
Pratiquer maintenant

Introduction

Dans ce laboratoire, vous apprendrez à écrire votre premier programme en C++. Vous commencerez par installer le compilateur GCC (GNU Compiler Collection) et par configurer les variables d'environnement nécessaires sur Ubuntu 22.04. Ensuite, vous créerez un nouveau fichier source C++, rédigerez la structure de base du programme et utiliserez l'instruction cout pour afficher le message "Hello World". Vous apprendrez également à compiler et à exécuter le programme, ainsi qu'à ajouter des commentaires sur une ou plusieurs lignes, à utiliser endl et \n pour les sauts de ligne, et à corriger les erreurs de syntaxe courantes comme l'oubli de points-virgules.

Installer le compilateur GCC et configurer les variables d'environnement sur Ubuntu 22.04

Dans cette étape, vous apprendrez à installer le compilateur GCC (GNU Compiler Collection) pour le C++ et à configurer les variables d'environnement nécessaires sur Ubuntu 22.04. GCC est essentiel pour compiler et exécuter des programmes C++.

Tout d'abord, ouvrons le terminal dans le WebIDE. Vous pouvez le faire en cliquant sur l'icône du terminal en bas de l'écran ou en utilisant le raccourci clavier (généralement Ctrl+`).

Commençons par mettre à jour la liste des paquets pour nous assurer d'avoir les dernières informations sur les paquets disponibles :

sudo apt update

Exemple de sortie :

Hit:1 http://mirrors.cloud.aliyuncs.com/ubuntu jammy InRelease
Hit:2 http://mirrors.cloud.aliyuncs.com/ubuntu jammy-updates InRelease
Hit:3 http://mirrors.cloud.aliyuncs.com/ubuntu jammy-backports InRelease
Hit:4 http://mirrors.cloud.aliyuncs.com/ubuntu jammy-security InRelease
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
157 packages can be upgraded. Run 'apt list --upgradable' to see them.

Sortie de la commande de mise à jour du terminal

Ensuite, nous installerons le compilateur GCC et les outils de développement associés :

sudo apt install -y build-essential

Exemple de sortie :

Reading package lists...
Building dependency tree...
Reading state information...
build-essential is already the newest version.
0 upgraded, 0 newly installed, 0 to remove and 22 not upgraded.

Pour vérifier l'installation et connaître la version de GCC, exécutez :

g++ --version

Exemple de sortie :

g++ (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0
Copyright (C) 2021 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

Le compilateur GCC est généralement déjà présent dans le PATH du système, aucune configuration supplémentaire n'est donc nécessaire.

Créer un nouveau fichier source C++ avec l'extension .cpp

Dans cette étape, vous apprendrez à créer un nouveau fichier source C++ avec l'extension .cpp. En C++, les fichiers source utilisent l'extension .cpp pour indiquer qu'ils contiennent du code C++. Nous utiliserons l'explorateur de fichiers et l'éditeur de texte du WebIDE pour créer notre premier fichier source C++.

Tout d'abord, accédez au répertoire ~/project dans le terminal :

cd ~/project

Maintenant, ouvrez l'explorateur de fichiers du WebIDE. Vous verrez une barre latérale avec une liste de fichiers et de dossiers. Cherchez une icône permettant de créer un nouveau fichier - elle peut ressembler à un signe "+" ou à une option "New File".

Faites un clic droit dans l'explorateur de fichiers et sélectionnez "New File". Lorsque vous y êtes invité, nommez le fichier hello.cpp. L'extension .cpp est cruciale car elle indique au compilateur et aux outils de développement qu'il s'agit d'un fichier source C++.

Exemple de création de fichier dans le terminal (pour référence) :

touch hello.cpp

Cliquez sur le fichier hello.cpp nouvellement créé pour l'ouvrir dans l'éditeur de texte du WebIDE. Vous verrez un fichier vide prêt à accueillir votre premier code C++.

L'extension .cpp est importante car :

  • Elle identifie le fichier comme un fichier de code source C++
  • Elle aide les outils de développement et les compilateurs à reconnaître le type de fichier
  • Elle distingue les fichiers C++ des fichiers d'autres langages de programmation comme .c (C), .java (Java) ou .py (Python)

À ce stade, votre fichier hello.cpp est prêt pour que vous commenciez à écrire du code C++. Dans les étapes suivantes, vous apprendrez à écrire un programme C++ de base dans ce fichier.

Écrire la structure de base du programme avec la fonction int main()

Dans cette étape, vous découvrirez la structure fondamentale d'un programme C++, en vous concentrant sur la fonction main(). Chaque programme C++ doit posséder une fonction main(), qui est le point d'entrée où le programme commence son exécution.

Ouvrez le fichier hello.cpp dans le WebIDE que vous avez créé à l'étape précédente. Nous allons maintenant ajouter la structure de base du programme :

#include <iostream>

int main() {
    // Votre code ira ici
    return 0;
}

Remarque : Il est recommandé de taper le code manuellement pour un meilleur apprentissage. Faites attention aux accolades { } et aux points-virgules ; car ils sont essentiels dans la syntaxe C++. N'oubliez pas les espaces et l'indentation, sinon la vérification de l'étape pourrait échouer.

Analysons cette structure de base :

  1. #include <iostream> : Il s'agit d'une directive de préprocesseur qui inclut la bibliothèque de flux d'entrée/sortie. Elle nous permet d'utiliser des opérations d'entrée et de sortie comme l'affichage à l'écran.
  2. int main() : Il s'agit de la déclaration de la fonction principale
    • int spécifie que la fonction renverra une valeur entière
    • main() est le point d'entrée standard pour les programmes C++
    • Les parenthèses vides () indiquent que la fonction ne prend aucun argument
  3. Accolades { } : Définissent le corps de la fonction où votre code sera écrit
  4. return 0; : Indique la fin réussie du programme
    • Renvoyer 0 indique au système d'exploitation que le programme s'est exécuté sans erreur
    • C'est une pratique standard dans les programmes C++

Le WebIDE enregistrera automatiquement vos modifications au fur et à mesure que vous tapez. Sinon, vous pouvez enregistrer manuellement le fichier en utilisant l'option d'enregistrement de l'éditeur.

Si vous souhaitez en savoir plus sur le WebIDE, consultez le Guide du WebIDE.

Quelques points importants à retenir :

  • Chaque programme C++ doit avoir une fonction main()
  • La fonction main() est l'endroit où l'exécution du programme commence
  • L'instruction return 0; est généralement utilisée pour indiquer une exécution réussie du programme

Vous pouvez considérer la fonction main() comme le point de départ d'un voyage. Tout comme un voyage en voiture commence à un endroit précis, un programme C++ commence son exécution à la fonction main().

Utiliser cout pour afficher le message Hello World

Dans cette étape, vous apprendrez à utiliser cout pour afficher un message "Hello, World!" à l'écran. cout fait partie de la bibliothèque standard d'entrée/sortie du C++ et est utilisé pour afficher des sorties.

Ouvrez le fichier hello.cpp dans le WebIDE et modifiez la fonction main() pour inclure le code suivant :

#include <iostream>

int main() {
    std::cout << "Hello, World!" << std::endl;
    return 0;
}

Analysons la nouvelle ligne de code :

  • std::cout : Il s'agit de l'objet de flux de sortie standard
    • std:: indique que nous utilisons l'espace de noms standard
    • cout signifie "console output" (sortie console)
  • << : L'opérateur d'insertion de flux, utilisé pour envoyer des données vers le flux de sortie
  • "Hello, World!" : Le message texte que nous voulons afficher
  • std::endl : Ajoute une nouvelle ligne et vide le tampon de sortie
    • Garantit que le message est immédiatement affiché
    • Déplace le curseur à la ligne suivante

Lorsque vous enregistrez le fichier, assurez-vous d'inclure toute la structure présentée ci-dessus.

Quelques points clés sur cout :

  • Il est utilisé pour afficher du texte, des nombres et d'autres types de données à l'écran
  • L'opérateur << peut être enchaîné pour afficher plusieurs éléments
  • std::endl est utilisé pour créer une nouvelle ligne après l'affichage

Vous pouvez considérer cout comme un mégaphone qui annonce votre message au monde. L'opérateur << vous aide à charger le message, et std::endl s'assure que tout le monde l'entend clairement.

Compiler le programme avec la commande g++ hello.cpp -o hello

Dans cette étape, vous apprendrez à compiler votre programme C++ en utilisant le compilateur g++. La compilation est le processus de conversion de votre code source C++ lisible par l'homme en un programme exécutable que l'ordinateur peut lancer.

Ouvrez le terminal dans le WebIDE. Assurez-vous d'être dans le répertoire ~/project :

cd ~/project

Maintenant, compilons le fichier hello.cpp que vous avez créé précédemment en utilisant la commande g++ :

g++ hello.cpp -o hello

Analysons cette commande :

  • g++ : Le compilateur GNU C++
  • hello.cpp : Le fichier source que vous souhaitez compiler
  • -o hello : Spécifie le nom de l'exécutable de sortie
    • -o est une option qui vous permet de nommer le fichier de sortie
    • hello est le nom de l'exécutable que vous allez créer

Exemple de sortie :

## Aucune sortie signifie une compilation réussie

Si la compilation réussit, aucun message d'erreur ne sera affiché. Le compilateur crée un fichier exécutable nommé hello dans le même répertoire.

Terminal compilant du code C++

Pour vérifier la compilation, vous pouvez vérifier les fichiers dans le répertoire :

ls

Exemple de sortie :

hello  hello.cpp

Vous devriez maintenant voir deux fichiers :

  • hello.cpp : Votre fichier de code source
  • hello : Le programme exécutable compilé

Quelques notes importantes sur la compilation :

  • S'il y a des erreurs dans votre code, g++ affichera des messages d'erreur
  • Vérifiez et corrigez toujours les erreurs de compilation avant d'essayer d'exécuter le programme
  • L'option -o est facultative, mais c'est une bonne pratique de donner à votre exécutable un nom significatif

Vous pouvez considérer la compilation comme la traduction d'un livre d'une langue à une autre. Le compilateur g++ traduit votre code C++ lisible par l'homme dans une langue que l'ordinateur peut comprendre et exécuter.

Exécuter le programme avec la commande ./hello

Dans cette étape, vous apprendrez à exécuter le programme exécutable que vous venez de compiler. Après avoir compilé votre programme C++, vous pouvez l'exécuter en utilisant la commande ./ suivie du nom de l'exécutable.

Assurez-vous d'être dans le répertoire ~/project :

cd ~/project

Pour exécuter le programme que vous avez compilé à l'étape précédente, utilisez la commande suivante :

./hello

Le ./ indique au système de chercher l'exécutable dans le répertoire actuel, et hello est le nom de l'exécutable que vous avez créé.

Exemple de sortie :

Hello, World!

Analysons ce qui se passe :

  • ./ signifie "dans le répertoire actuel"
  • Le programme lit les instructions contenues dans votre exécutable compilé
  • Il affiche le message que vous avez défini dans votre code source C++
  • Après l'affichage, le programme se termine

Quelques notes importantes sur l'exécution :

  • Utilisez toujours ./ avant le nom de l'exécutable lors de l'exécution d'un programme dans le répertoire actuel
  • Le programme doit avoir les permissions d'exécution (ce que g++ fournit automatiquement)
  • Si vous ne voyez pas la sortie, vérifiez que vous avez correctement compilé le programme

Vous pouvez considérer l'exécution d'un programme comme le démarrage d'une voiture. La compilation prépare la voiture, et l'exécution du programme consiste à tourner la clé et à conduire.

Si vous souhaitez exécuter le programme plusieurs fois, vous pouvez simplement répéter la commande ./hello.

Ajouter des commentaires sur une ou plusieurs lignes

Dans cette étape, vous apprendrez à ajouter des commentaires à votre code C++. Les commentaires sont des notes dans votre code qui expliquent ce que fait le code. Ils sont ignorés par le compilateur et aident à rendre votre code plus lisible.

Ouvrez le fichier hello.cpp dans le WebIDE et modifiez-le pour inclure différents types de commentaires :

#include <iostream>

// Ceci est un commentaire sur une seule ligne
// Il explique ce que fait le programme

/*
Ceci est un commentaire sur plusieurs lignes
Vous pouvez écrire plusieurs lignes d'explication
Sans vous soucier d'ajouter // à chaque ligne
*/
int main() {
    // Afficher un message de bienvenue
    std::cout << "Hello, World!" << std::endl;  // Commentaire en ligne expliquant la sortie

    /*
    Vous pouvez également utiliser des commentaires sur plusieurs lignes
    au milieu de votre code si nécessaire
    */
    return 0;  // Renvoyer le statut de succès au système d'exploitation
}

Analysons les types de commentaires :

  1. Commentaires sur une seule ligne :

    • Commencent par //
    • S'étendent jusqu'à la fin de la ligne
    • Idéal pour les explications courtes
  2. Commentaires sur plusieurs lignes :

    • Commencent par /*
    • Se terminent par */
    • Peuvent s'étendre sur plusieurs lignes
    • Utiles pour des explications plus longues
  3. Commentaires en ligne :

    • Ajoutés à la fin d'une ligne de code
    • Expliquent la ligne de code spécifique

Compilez et exécutez le programme pour vérifier qu'il fonctionne toujours :

g++ hello.cpp -o hello
./hello

Exemple de sortie :

Hello, World!

Quelques points clés sur les commentaires :

  • Les commentaires rendent votre code plus compréhensible
  • Ils aident les autres programmeurs (et vous-même) à comprendre le but du code
  • Le compilateur ignore complètement les commentaires
  • Utilisez les commentaires pour expliquer "pourquoi" quelque chose est fait, pas "ce qui" est fait

Vous pouvez considérer les commentaires comme des post-its dans un livre. Ils fournissent un contexte et une explication supplémentaires sans modifier le texte réel.

Utiliser endl et \n pour les sauts de ligne

Dans cette étape, vous apprendrez deux façons de créer des sauts de ligne dans la sortie C++ : std::endl et le caractère de nouvelle ligne \n. Les deux méthodes vous aident à formater votre sortie sur plusieurs lignes.

Ouvrez le fichier hello.cpp dans le WebIDE et modifiez-le pour démontrer les sauts de ligne :

#include <iostream>

int main() {
    // Utilisation de std::endl pour les sauts de ligne
    std::cout << "Hello, World!" << std::endl;
    std::cout << "Welcome to C++ Programming!" << std::endl;

    // Utilisation de \n pour les sauts de ligne
    std::cout << "Using newline character:\n";
    std::cout << "Line 1\n";
    std::cout << "Line 2\n";

    // Mélange des deux méthodes
    std::cout << "Mixing methods: " << std::endl;
    std::cout << "Line with endl\n";
    std::cout << "Line with newline character" << std::endl;

    return 0;
}

👆 Conseils LabEx : Cliquez sur "Explain Code" en bas à droite du bloc de code pour discuter avec l'IA Labby afin d'obtenir des éclaircissements sur le code.

Analysons les méthodes de saut de ligne :

  1. std::endl :

    • Ajoute une nouvelle ligne
    • Vide le tampon de sortie (garantit un affichage immédiat)
    • Fait partie de la bibliothèque <iostream>
    • Utilisé avec std::cout
  2. \n (Caractère de nouvelle ligne) :

    • Moyen simple de créer une nouvelle ligne
    • Plus léger que std::endl
    • Fonctionne dans de nombreux contextes de programmation
    • Ne vide pas le tampon de sortie

Compilez et exécutez le programme :

g++ hello.cpp -o hello
./hello

Exemple de sortie :

Hello, World!
Welcome to C++ Programming!
Using newline character:
Line 1
Line 2
Mixing methods:
Line with endl
Line with newline character

Points clés :

  • std::endl et \n créent tous deux de nouvelles lignes
  • std::endl est plus complet mais légèrement plus lent
  • \n est plus rapide et plus léger
  • Vous pouvez mélanger et assortir ces méthodes

Vous pouvez considérer les sauts de ligne comme des sauts de paragraphe dans un livre. Ils aident à organiser et à structurer votre sortie.

Corriger les erreurs de syntaxe courantes comme l'oubli de points-virgules

Dans cette étape, vous découvrirez les erreurs de syntaxe courantes en C++, en vous concentrant sur l'oubli de points-virgules. Les points-virgules sont cruciaux en C++ car ils marquent la fin des instructions.

Créez un nouveau fichier appelé syntax_errors.cpp dans le WebIDE :

cd ~/project
touch syntax_errors.cpp
#include <iostream>

int main() {
    // Erreur de syntaxe courante : Point-virgule manquant
    std::cout << "This line has an error"  // Point-virgule manquant ici !
    std::cout << "This line will not compile" << std::endl;

    // Version correcte avec points-virgules
    std::cout << "This line is correct" << std::endl;
    std::cout << "All statements end with a semicolon" << std::endl;

    return 0;  // N'oubliez pas le point-virgule ici aussi !
}

Essayez de compiler le programme :

g++ syntax_errors.cpp -o syntax_errors

Exemple d'erreur de compilation :

syntax_errors.cpp: In function ‘int main()’:
syntax_errors.cpp:5:42: error: expected ‘;’ before ‘std’
    5 |     std::cout << "This line has an error"  // Missing semicolon here!
      |                                          ^
      |                                          ;
    6 |     std::cout << "This line will not compile" << std::endl;
      |     ~~~

Points clés sur les points-virgules :

  • Chaque instruction en C++ doit se terminer par un point-virgule ;
  • Les points-virgules indiquent au compilateur où une instruction se termine et où une autre commence
  • L'oubli de points-virgules provoque des erreurs de compilation
  • Endroits courants où oublier des points-virgules :
    • Après les instructions cout
    • Après les instructions return
    • À la fin des déclarations de variables

Corrigeons les erreurs :

  1. Ajoutez les points-virgules manquants
  2. Assurez-vous que chaque instruction se termine par ;

Compilez la version corrigée :

g++ syntax_errors.cpp -o syntax_errors
./syntax_errors

Si l'opération réussit, aucun message d'erreur n'apparaîtra.

Vous pouvez considérer les points-virgules comme des points dans une phrase. Ils marquent la fin d'une pensée complète dans votre code.

Résumé

Dans ce laboratoire, vous avez appris à installer le compilateur GCC (GNU Compiler Collection) pour le C++ et à configurer les variables d'environnement nécessaires sur Ubuntu 22.04. Vous avez créé un nouveau fichier source C++, rédigé la structure de base d'un programme avec la fonction int main() et utilisé cout pour afficher le message "Hello World". Vous avez ensuite compilé le programme en utilisant la commande g++ et l'avez exécuté. De plus, vous avez appris à ajouter des commentaires sur une ou plusieurs lignes, à utiliser endl et \n pour les sauts de ligne, et à corriger les erreurs de syntaxe courantes telles que l'oubli de points-virgules.

Après avoir terminé ces étapes, vous disposez d'une base solide pour écrire et exécuter votre premier programme C++, ainsi qu'une compréhension des outils et concepts de base requis pour le développement C++ sur Ubuntu 22.04.