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.
Certains environnement de développement servent d'éditeurs, et prennent en charge la compilation et linkage (ex: dev-C++).

1-2. Structure d'un programme C

Importation de la bibliothèque

#include < stdio.h >

Selon ce que l'on souhaite faire dans notre programme, on peut avoir besoin de différentes fonctions.
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 !");
}