Chapitre 1 : Présentation du langage C Page : 2
INTRODUCTION
Présentation du langage C.
1.1) Historique.
C et Unix (système d'exploitation) furent développés en commun. La légende dit que Unix a été
développé dans le grenier d'un laboratoire de la compagnie BELL.
Voici en quelques lignes comment UNIX et C ont été développés par deux hommes :
De 1969 à 1972 : un ingénieur de chez BELL, Ken THOMPSON obtient un ordinateur dépourvu de
logiciels. Il écrivit, avec l'aide de Dennis RITCHIE, une série de programmes (système d'exploitation)
qui lui permirent de développer du logiciel.
En 1972 : le système d'exploitation fut recodé dans un nouveau langage, le langage C, pour donner
naissance au système d'exploitation UNIX. Le langage C, dont l'auteur est Dennis RITCHIE, est un
descendant du langage B (langage sans type de données) écrit par Ken THOMPSON en 1970.
En 1973 : distribution aux universités du système d'exploitation UNIX.
Maintenant le langage C peut fonctionner avec d'autres systèmes d'exploitations: MS DOS, CP/M,
OS2, OS9, etc...
1.2) Présentation, caractéristiques.
• Caractéristiques d'un langage évolué.
• Caractéristiques de l'assembleur (accès à toutes les ressources intemes de la machine).
• Idéal pour le développement d'un système d'exploitation (Unix par exemple).
• La plupart des logiciels commercialisés sont écrits en C.
• Le langue C est un langage modulaire et structuré .
• Le langage C permet de manipuler tous les types de données .
• Le langage C a un bon traitement de pointeurs.
• Le langage C est assez démuni : pas d'instructions d'entrées/sorties, pas de gestion mémoire
(saut pour les variables automatiques). Un grand nombre de fonctions écrites en C et
regroupées dans une librairie standard, permet de combler ces carences.
• C’est un langage récursif.
1.3) Compilation.
Il existe sur le marché un grand nombre de compilateurs C, soit sur systèmes multipostes et multitâches
sous Unix, OS9, .... soit sur un IBM PC et compatibles (Lattice, Microsoft, MixC). Il existe aussi
Turbo C de chez BORLAND par exemple (utilisé au lycée). Son emploi est facilité par un
environnement très convivial (menus superposables et déroulants).