1.1. Respectons la tradition… Bonjour !

Icône de l'outil pédagogique Respectons la tradition... Bonjour !

Voici un programme C très simple qui permet d'afficher à l’écran dans une « fenêtre DOS » le message :

Bonjour monde !

Certains compilateurs préfèrent la version 2 de droite et génèrent un warning sans gravité avec celle de gauche, plus simple. Tous les exemples de ce document utilisent la version 1 plus simple.

La ligne void main (void) (ou int main (void)) est une ligne d'en‐tête qui déclare que ce qui suit constitue le programme principal : l'exécution de tout programme en Langage C commence toujours à partir de cette ligne. En fait, main est une fonction reconnaissable à la présence des parenthèses ( ) après son nom.

Le terme fonction apparaîtra souvent dans ce document : en Langage C, le mot fonction désigne tous les sous-programmes.
Les accolades ouvrantes { et fermantes } contiennent le corps de la fonction main, c'est‐à‐dire les définitions de variables et les instructions de main. On dit qu'elles délimitent un bloc.
Le corps de main ne contient pour l'instant qu’une ligne qui fait appel à un « sous‐programme » d’affichage de la bibliothèque standard du Langage C : printf est une fonction (présence des parenthèses) qui affiche la chaîne de caractères comprise entre les guillemets " ".
A la fin de chaque ligne se trouve un point‐virgule (;). Ce délimiteur termine obligatoirement en C chaque déclaration de variable et chaque instruction simple.
Un commentaire (ici sur la ligne d’en‐tête de main) peut être inséré sur une ligne, seul ou derrière une instruction. Il commence par /*, termine par */, et occupe autant de place qu'on le désire. Les commentaires imbriqués sont interdits. Beaucoup d’environnements acceptent qu’un commentaire commence par //, il s’achève alors automatiquement à la fin de la ligne.

Le Langage C fait la distinction entre minuscules et majuscules. Toutes les instructions du C sont écrites en minuscules

La directive #include au début du programme n'est pas une instruction exécutable. C'est un ordre destiné au préprocesseur (étape précédant la compilation), qui demande l'insertion du fichier en‐tête stdio.h. Un fichier en‐tête contient les informations nécessaires au compilateur pour vérifier la bonne utilisation des fonctions d'entrées/sorties comme printf (stdio = STandarD Input/Output). Toute utilisation d’une fonction du Langage C devra être précédée par l'insertion (par la directive #include) du fichier entête associé : par exemple, math.h pour les fonctions mathématiques, string.h pour les fonctions de manipulation de chaînes de caractères, stdio.h pour les fonctions d'entrées/sorties ...
 
Dans la suite de ce document, afin d'alléger l'écriture des programmes, nous n'écrirons pas les directives #include nécessaires au bon fonctionnement des exemples. Cet "oubli" sera corrigé par le compilateur (CVI) ou donnera lieu à un message du compilateur si celui ci est correctement configuré (du genre "Call to function without declaration/prototype").
 
Utilisez l'aide en ligne pour savoir quel fichier en-tête d'extension .h est associé à une fonction.