1. Introduction
1-1. Définitions et terminologie
Un programme exécutable est une suite d'instructions exécutée par le processeur.
Cet ensemble d'instructions est saisi dans un fichier .c à l'aide d'un éditeur de texte (ex: bloc note, sublime...), ce type de fichier s'appellle fichier source. Les instructions qui y sont écrites s'appellent du code ou encore le code source.
Un compilateur est un logiciel qui lit le code source et le converti en un code exécutable, c'est-à-dire un ensemble d'instructions compréhensible par le processeur. La compilation d'une source se fait en deux étapes: la compilation proprement dite et le linkage. On utilise en général le terme compilation en englobant les deux types étapes précédemment citées.
- La compilation propremment dite produit un un fichier objet dont l'extension est .obj;
- Les sources peuvent être réparties dans plusieurs fichiers, ceux-ci doivent être compilés séparément.
1-2. Structure d'un programme C
Importation de la bibliothèque
#include < stdio.h >
Celles-ci sont disponibles des bibliothèques. Par exemple:
- stdio.h propore des fonctions de saisie et d'affichage
- conio.h propose aussi des fonctions d'entrées/sorties
- math.h propose des fonctions mathématiques
Corps du programme
#include < stdio.h >
main()
{
intruction1;
intruction2;
intruction3;
------------;
intruction-n;
}
Exemple de programme C
#include < stdio.h >
main()
{
printf ("Hello world !");
}
Résultat
Remarquez que chaque ligne se termine par un point-virgule ";". Pour afficher une variable de type alpha-numérique en C, on utilise printf("Texte à afficher");.
1-3. Commentaires
Un commentaire est une séquence de caractères ignorée par le compilateur, on s'en sert pour expliquer des portions de code. On les délimite par:
- /* commentaire */: si le commentaire s'étend sur plusieurs lignes;
- // commentaire : si le commentaire ne s'étend que sur une seule ligne.
Exemple de code avec commentaire
#include < stdio.h >
main()
{
/* Ceci est un commentaire, il sera ignoré par le compilateur */
printf ("Hello world !");
}