Introduction
Dans ce laboratoire, vous apprendrez à écrire et à exécuter votre premier programme C dans la machine virtuelle (VM) LabEx. Vous commencerez par un simple programme "Hello, World!", puis améliorerez la sortie avec plusieurs instructions d'impression, personnaliserez la sortie en utilisant des variables, explorerez la manipulation de chaînes de caractères en C, et enfin, apprendrez à compiler et à déboguer des programmes C.
Écrivez et exécutez votre premier programme C
Dans cette étape, vous allez écrire et exécuter votre tout premier programme C dans la machine virtuelle (VM) LabEx. Nous vous guiderons tout au long de la création d'un simple programme "Hello, World!" qui vous introduira à la structure de base de la programmation en C.
Ouvrir le WebIDE
- Cliquez sur l'onglet "WebIDE" (par défaut) dans l'interface LabEx pour ouvrir l'environnement similaire à VS Code.
- Dans l'explorateur de fichiers de la barre latérale gauche, cliquez avec le bouton droit et sélectionnez "Nouveau fichier".
- Nommez le fichier
hello.c. L'extension.cindique qu'il s'agit d'un fichier de code source C.

Si vous souhaitez en savoir plus sur le WebIDE, consultez le Guide du WebIDE.
Écrire votre premier programme C
Copiez et collez le code suivant dans votre fichier hello.c :
#include <stdio.h>
int main() {
printf("Hello, World!\n");
return 0;
}
Analysons ce code :
#include <stdio.h>: Inclut la bibliothèque standard d'entrée/sortieint main() {... }: La fonction principale où commence l'exécution du programmeprintf("Hello, World!\n");: Affiche du texte à l'écran\n: Passe à la ligne après l'affichagereturn 0;: Indique la fin réussie du programme
Compiler et exécuter le programme
Ouvrez le terminal dans votre WebIDE et exécutez ces commandes :
gcc hello.c -o hello
./hello

Exemple de sortie :
Hello, World!
Explication des commandes
gcc hello.c -o hello: Compile le code source C en un exécutable nomméhello./hello: Exécute le programme compilé
Améliorez la sortie avec plusieurs instructions d'impression
Dans cette étape, vous apprendrez à améliorer votre programme C en ajoutant plusieurs instructions d'impression. Cela vous aidera à comprendre comment afficher des sorties plus complexes et à utiliser plusieurs lignes de texte dans vos programmes.
Modifier votre programme existant
- Ouvrez le fichier
hello.cdans le WebIDE que vous avez créé à l'étape précédente. - Remplacez le contenu du fichier par le code suivant :
#include <stdio.h>
int main() {
printf("Hello, World!\n");
printf("Welcome to C programming!\n");
printf("This is your first multi-line program.\n");
return 0;
}
Explication du code
- Nous avons ajouté deux instructions
printfsupplémentaires. - Chaque instruction
printfse termine par\npour créer une nouvelle ligne. - Les points-virgules (
;) marquent la fin de chaque instruction.
Compiler et exécuter le programme mis à jour
Ouvrez le terminal dans votre WebIDE et exécutez ces commandes :
gcc hello.c -o hello
./hello
Exemple de sortie :
Hello, World!
Welcome to C programming!
This is your first multi-line program.
Observations clés
- Chaque instruction
printfs'affiche sur une ligne distincte. - Le caractère
\nassure les sauts de ligne entre les sorties. - Vous pouvez ajouter autant d'instructions
printfque nécessaire.
Conseils de dépannage :
- Assurez-vous que chaque ligne se termine par
\n. - Vérifiez que chaque instruction
printfse termine par un point-virgule. - Vérifiez que vous avez enregistré le fichier avant de le compiler.
Personnalisez la sortie en utilisant des variables
Dans cette étape, vous apprendrez à utiliser des variables en C pour créer des sorties plus dynamiques et personnalisées. Les variables vous permettent de stocker et de manipuler des données dans votre programme.
Créer un nouveau programme C avec des variables
- Ouvrez le WebIDE et créez un nouveau fichier nommé
greeting.c. Ou, vous pouvez tapertouch greeting.cdans le terminal pour créer le fichier. - Entrez le code suivant dans le fichier
greeting.c:
#include <stdio.h>
int main() {
char name[] = "LabEx";
printf("Hello, %s!\n", name);
printf("Welcome to C programming, %s!\n", name);
return 0;
}
Explication du code
char name[] = "LabEx";: Crée une variable tableau de caractères (chaîne de caractères) nomméename%sest un spécificateur de format qui indique àprintfd'insérer une chaîne de caractères, nameaprès la chaîne de format spécifie quelle variable insérer
Compiler et exécuter le programme
Ouvrez le terminal dans votre WebIDE et exécutez ces commandes :
gcc greeting.c -o greeting
./greeting
Exemple de sortie :
Hello, LabEx!
Welcome to C programming, LabEx!
Expérimenter avec les variables
Essayez de changer la variable name pour votre propre nom :
char name[] = "Your Name";
Recompilez et exécutez le programme pour voir la sortie personnalisée.
Conseils de dépannage :
- Assurez-vous que la variable est définie avant de l'utiliser dans
printf - Vérifiez que vous avez enregistré le fichier avant de le compiler
- Vérifiez que le nom de la variable est orthographié correctement
Explorez la manipulation de chaînes de caractères en C
Dans cette étape, vous apprendrez les techniques de base de manipulation de chaînes de caractères en C, y compris la concaténation de chaînes et l'utilisation de fonctions liées aux chaînes de caractères de la bibliothèque standard.
Créer un programme de manipulation de chaînes de caractères
- Ouvrez le WebIDE et créez un nouveau fichier nommé
strings.c. - Entrez le code suivant :
#include <stdio.h>
#include <string.h>
int main() {
char first_name[] = "Lab";
char last_name[] = "Ex";
char full_name[20];
// Concatenate strings
strcpy(full_name, first_name);
strcat(full_name, " ");
strcat(full_name, last_name);
// Print string length and concatenated name
printf("First name length: %lu\n", strlen(first_name));
printf("Last name length: %lu\n", strlen(last_name));
printf("Full name: %s\n", full_name);
return 0;
}
Explication du code
#include <string.h>: Inclut les fonctions de manipulation de chaînes de caractèresstrcpy(): Copie une chaîne de caractères dans une autrestrcat(): Concatène (joint) deux chaînes de caractèresstrlen(): Retourne la longueur d'une chaîne de caractères%lu: Spécificateur de format pour un entier non signé long (utilisé avec la longueur d'une chaîne de caractères)
Compiler et exécuter le programme
Ouvrez le terminal dans votre WebIDE et exécutez ces commandes :
gcc strings.c -o strings
./strings
Exemple de sortie :
First name length: 3
Last name length: 2
Full name: Lab Ex
Techniques de manipulation de chaînes de caractères
Opérations clés sur les chaînes de caractères démontrées :
- Création de tableaux de caractères
- Copie de chaînes de caractères avec
strcpy() - Jointure de chaînes de caractères avec
strcat() - Recherche de la longueur d'une chaîne de caractères avec
strlen()
Conseils de dépannage :
- Assurez-vous d'avoir suffisamment d'espace dans la chaîne de destination
- Toujours inclure
<string.h>pour les fonctions de chaînes de caractères - Faites attention aux tailles des tampons de chaînes pour éviter les dépassements de capacité
Compiler et déboguer des programmes C
Dans cette étape, vous apprendrez les techniques essentielles de compilation et de débogage pour les programmes C, notamment la compréhension des avertissements du compilateur, l'utilisation d'indicateurs de compilation et les stratégies de débogage de base.
Créer un programme avec des erreurs intentionnelles
- Ouvrez le WebIDE et créez un nouveau fichier nommé
debug.c. - Entrez le code suivant avec quelques erreurs intentionnelles :
#include <stdio.h>
int main() {
int x = 10;
int y = 0;
// Intentional division by zero
int result = x / y;
printf("Result: %d\n", result);
// Unused variable
int z = 5;
return 0;
}
Compiler avec des avertissements
Compilez le programme avec des indicateurs d'avertissement supplémentaires :
gcc -Wall -Wextra debug.c -o debug
Explication des indicateurs de compilation
-Wall: Active la plupart des messages d'avertissement-Wextra: Active des avertissements encore plus détaillés
Exemple de sortie du compilateur :
debug.c: In function ‘main’:
debug.c:13:9: warning: unused variable ‘z’ [-Wunused-variable]
13 | int z = 5;
| ^
Utiliser GDB pour le débogage
Compilez avec des symboles de débogage :
gcc -g debug.c -o debug
Démarrez le débogage :
gdb./debug
Commandes GDB :
run: Démarrer le programmebreak main: Définir un point d'arrêt à la fonction principaleprint x: Afficher la valeur de la variable xnext: Exécuter la ligne suivantequit: Quitter GDB
(gdb) run
Starting program: /home/labex/project/debug
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
Program received signal SIGFPE, Arithmetic exception.
0x0000555555555167 in main () at debug.c:8
8 int result = x / y;
(gdb) print x
$1 = 10
(gdb) break main
Breakpoint 1 at 0x555555555155: file debug.c, line 4.
(gdb) next
Program terminated with signal SIGFPE, Arithmetic exception.
The program no longer exists.
(gdb) quit
GDB montre une erreur de division par zéro à la ligne 8. Le programme plante en raison d'une exception arithmétique.
Corriger le programme
Modifiez debug.c pour gérer la division en toute sécurité :
#include <stdio.h>
int main() {
int x = 10;
int y = 2; // Change from 0 to a non-zero value
if (y!= 0) {
int result = x / y;
printf("Result: %d\n", result);
} else {
printf("Error: Division by zero!\n");
}
return 0;
}
Recompilez et exécutez :
gcc -Wall -Wextra debug.c -o debug
./debug
Sortie :
Result: 5
Conseils de dépannage :
- Toujours compiler avec
-Wall -Wextra - Prêtez attention aux avertissements du compilateur
- Utilisez GDB pour les scénarios de débogage complexes
- Ajoutez des vérifications d'erreur pour les problèmes potentiels à l'exécution
Résumé
Dans ce laboratoire, vous avez appris à écrire et à exécuter votre premier programme C, à améliorer la sortie avec plusieurs instructions d'impression, à personnaliser la sortie en utilisant des variables, à explorer la manipulation de chaînes de caractères en C, ainsi qu'à compiler et à déboguer des programmes C. Vous avez acquis une expérience pratique de la structure de base de la programmation en C, y compris l'inclusion de bibliothèques, la définition de la fonction principale, l'utilisation de printf() pour afficher la sortie, ainsi que la compilation et l'exécution du programme. Vous avez également exploré des concepts plus avancés tels que l'utilisation de plusieurs instructions d'impression et la manipulation de variables et de chaînes de caractères.



