Programmation bas niveau (BNV) Help

Cours : Présentation du langage C

Un peu d'histoire

Le C est un langage de programmation créé au début des années 70 en parallèle d'Unix. Il a été créé par Dennis Ritchie et Ken Thompson.

La principale problématique à l'époque était d'avoir un langage de programmation qui permettrait de créer un système d'exploitation plus simplement qu'en devant l'écrire en langage assembleur.

Depuis de nombreux langages se sont inspirés de sa syntaxe ou bien sont eux-mêmes "écrits" en C.

Les instructions

Le C est un langage impératif, il se lit donc instruction par instruction de haut en bas.

Une instruction en C est toujours terminée par un ;

La compilation

Le C est également un langage compilé. Cela signifie que l'on utilise un programme, dans notre cas gcc pour transformer notre code C en quelque chose que notre ordinateur comprendra mieux. L'ordinateur transformera ensuite ce code "machine" en un fichier binaire exécutable que nous pourrons lancer.

Hello World en C

Ce qui suit est un programme très basique écrit en C qui permet d'afficher la phrase Hello World suivie d'un retour à la ligne dans notre terminal.

fichier main.c

#include <stdlib.h> #include <stdio.h> int main() { printf("Hello World!\n"); exit(0); }

Que se passe-t-il dans ce fichier main.c?

Inclusion des librairies

Les fonctions toutes faites en C sont disponibles dans des librairies de fonctions.

#include <stdlib.h> #include <stdio.h>

Ces deux lignes signifient que nous allons inclure les librairies toutes faites stdlib.h et stdio.h. Cela va nous permettre d'accéder aux différentes fonctions de ces librairies.

Ici stdlib.h nous permet d'accéder à la fonction exit() et stdio.h à la fonction printf().

La fonction main

La fonction main() que vous écrivez vous-même est le point d'entrée de n'importe quel programme en C. Ici vous en voyez une version minimale, sachez qu'elle se compliquera ensuite.

int main() { }

Pour l'instant le code de vos programmes se trouvera entre les {} de la fonction main.

Les accolades {} nous permet d'indiquer où commence et où finit la fonction. Tout ce qui est compris entre ces accolades fera partie de la fonction main().

printf("Hello World!\n"); exit(0);

printf() est une fonction qui nous permet d'afficher quelque chose sur le terminal. Ici nous affichons la phrase Hello World! puis un saut de ligne indiqué par le caractère \n.

exit(0) est une fonction qui permet de terminer notre programme en envoyant un "code de fin". exit() prend un entier en paramètre. Nous appelons donc la fonction exit en lui envoyant le "code de fin" 0.

Compiler un fichier en C

Pour compiler un fichier .c et donc permettre à la machine d'en faire du code machine puis un binaire, nous allons utiliser le compilateur gcc.

Nous allons utiliser gcc comme ceci :

gcc main.c -o hello-world

Ensuite notre ordinateur aura créé un fichier hello-world. Pour exécuter ce fichier hello-world nous devons saisir la commande suivante dans le terminal :

./hello-world

Si vous ne précisez pas de nom pour votre executable (donc si vous oubliez le -o nom_executable) gcc lui donnera un nom par défaut : a.out.

Exercices : Présentation du langage C

07 October 2025