< Avant-propos | TutoCFrench | Manipuler des valeurs >
Notions :
gcc
main()
Le langage C a été créé par Brian Kernighan au début des années 70 afin d'eviter autant que possible l'utilisation de l'assembleur dans l'écriture du système UNIX. L'avantage du C sur l'assembleur est qu'il permet aux programmes d'être plus concis, plus simples à écrire et qu'ils sont facilement portables sur d'autres architectures.
C est un langage :
Le langage C est un "langage compilé", c'est à dire que ses instructions sont traduites en langage machine à l'aide d'un compilateur. Outre le système d'exploitation vous aurez donc besoin :
vi
et emacs
gcc
Explication du programme pas à pas :
/* ... */
permettent d'insérer dans le code un commentaire, ici sur plusieurs lignes
#include <stdio.h>
permet d'utiliser la fonction d'affichage printf
int main()
est le point d'entrée du programme
main
est le nom de la fonction principale
()
indiquent que notre programme ne prend pas d'argument en entrée
int
indique que notre programme va renvoyer un nombre entier au shell
{
débute le code proprement dit
printf()
permet d'afficher un message à l'écran. Les guillemets "..."
délimitent la chaîne de caractère à afficher. Le caractère \n
signifie un saut de ligne suivi d'un retour chariot. Le point-virgule ;
à la fin de chaque phrase est indispensable
return
permet de renvoyer un code de retour au shell. Ici, le programme renvoie la valeur 0
}
termine un bloc d'instructions, ici la fonction principale main()
Pour compiler et exécuter ce programme sous UNIX, il faut d'abord le copier dans un fichier se terminant par l'extension .c
à l'aide d'un éditeur de texte. Appelons ce fichier "intro.c". On le compile sous GNU/Linux avec gcc
(sous d'autre UNIX, le compilateur s'appelle le plus souvent cc
) :
$ gcc intro.c
Cela génère un fichier exécutable qui s'appelle par défaut a.out
. Pour le lancer à partir du shell :
$ ./a.out hello world
Si nous préfèrons génèrer un fichier exécutable nommé par exemple "intro", nous devons utiliser l'option -o
:
$ gcc -o intro intro.c $ ./intro hello world
A la compilation, il est également conseillé d'utiliser l'option -Wall
pour s'assurer que le code est syntaxiquement impeccable :
$ gcc -Wall -o intro intro.c
1. Recopiez le programme précédent, compilez-le et lancez le. Ensuite, modifiez le afin qu'il produise le résultat suivant :
$ ./intro hello world
2. Modifiez la valeur retournée par la fonction main et une fois le programme compilé et exécuté, testez la commande shell suivante : echo $?.