Cours généralités sur le langage C, tutoriel & guide de travaux pratiques en pdf.
GÉNÉRALITÉS SUR LE LANGAGE C
Dans ce chapitre, nous vous proposons une première approche d’un programme en langage C.
Nous dégagerons ensuite quelques règles générales concernant l’écriture d’un programme. Enfin, nous vous montrerons comment s’organise le développement d’un programme en vous rappelant ce que sont: l’édition, la compilation, l’édition de liens et l’exécution.
PRÉSENTATION PAR L’EXEMPLE DE QUELQUES INSTRUCTIONS DU LANGAGE C
Un exemple de programme en langage C
Voici un premier exemple très simple de programme en langage C.
#include <stdio.h>
int main(void)
{ int i ;
double x ;
i=0 ;
x=3.1415926535
printf(‘’Bonjour tout le monde \n‘’) ;
printf(‘’i vaut : %d et x vaut :%f’’,i,x) ;
return 0 ;
}
Structure d’un programme en langage C
La ligne: int main(void ) se nomme un « en-tête ». Elle précise que ce qui sera décrit à sa suite est en fait le »programme principal » (int main). Lorsque nous aborderons l’écriture des fonctions en C, nous verrons que celles-ci possèdent également un tel en-tête; ainsi, en C, le programme principal apparaîtra en fait comme une fonction dont le nom (int main) est imposé.
Le programme (principal) proprement dit vient à la suite de cet en-tête. Il est délimité par les accolades « { » et « } ». On dit que les instructions situées entre ces accolades forment un « bloc ». Ainsi peut-on dire que la fonction main est constituée d’un en-tête et d’un bloc; il en ira de même pour toute fonction C. Notez qu’un bloc (comme en Pascal) peut lui-même contenir d’autres blocs. En revanche, nous verrons qu’une fonction ne peut jamais contenir d’autres fonctions (ce qui est le cas du Pascal).
Déclarations
Les deux instructions : int i; double x; sont des « déclarations ».
La première précise que la variable nommée i est de type int, c’est-à-dire qu’elle est destinée à contenir des nombres entiers (relatifs). Nous verrons qu’en C il existe plusieurs types d’entiers.
L’autre déclaration précise que la variables x sont de type double c’est-à-dire qu’elles sont destinées à contenir des nombres flottants (approximation de nombres réels). Là encore, nous verrons qu’en C il existe plusieurs types flottants.
En C, comme en Pascal, les déclarations des types des variables sont obligatoires et doivent être regroupées au début du programme (on devrait plutôt dire: au début de la fonction main). Il en ira de même pour toutes les variables définies dans une fonction; on les appelle « variables locales » (en toute rigueur, les variables définies dans notre exemple sont des variables locales de la fonction main). Nous verrons également (dans le chapitre consacré aux fonctions) qu’on peut définir des variables en dehors de toute fonction; on parlera alors de variables globales.
Pour écrire des informations: la fonction printf
L’instruction : printf (« Bonjour\n ») ; appelle en fait une fonction « prédéfinie » (fournie avec le langage, et donc que vous n’avez pas à écrire vous-même) nommée printf. Ici, cette fonction reçoit un argument qui est : « Bonjour\n »
Les guillemets servent à délimiter une « chaîne de caractères » (suite de caractères). La notation \n est conventionnelle: elle représente un caractère de fin de ligne, c’est-à-dire un caractère qui, lorsqu’il est envoyé à l’écran, provoque le passage à la ligne suivante. Nous verrons que, de manière générale, le langage C prévoit une notation de ce type (\ suivi d’un caractère) pour un certain nombre de caractères dits « de contrôle », c’est-à-dire ne possédant pas de « graphisme » particulier.
La fonction return
On la reverra plus tard, notez simplement qu’elle est obligatoire.
Les directives à destination du préprocesseur
La première ligne de notre programme : #include <stdio.h> est en fait un peu particulière. Il s’agit d’une « directive » qui est prise en compte avant la traduction (compilation) du programme. Ces directives, contrairement au reste du programme, doivent être écrites à raison d’une par ligne et elles doivent obligatoirement commencer en début de ligne. Leur emplacement au sein du programme n’est soumis à aucune contrainte (mais une directive ne s’applique qu’à la partie du programme qui lui succède). D’une manière générale, il est préférable de les placer au début, comme nous l’avons fait ici. La directive demande en fait d’introduire (avant compilation) des instructions (en langage C) situées dans le fichier stdio.h. Notez qu’un même fichier en-tête contient des déclarations relatives à plusieurs fonctions. En général, il est indispensable d’incorporer stdio.h.
……..
Cours gratuit le langage C ( 548 KO) (Cours PDF)