Table of Contents
Histoire du langage C
Le langage C a été créé au début des années 1970 par Dennis Ritchie et Ken Thompson aux laboratoires Bell (AT&T) pour réécrire le système d'exploitation UNIX, qui était initialement en langage d'assemblage.
Langage C original
La première version du C sort en 1972. Elle était étroitement liée au développement d'UNIX. Son adoption rapide a fait de C le langage privilégié pour développer des systèmes d'exploitation et des logiciels nécessitant des performances et une gestion fine de la mémoire.
K & R C
En 1978, Brian Kernighan et Dennis Ritchie publient le livre de référence "The C Programming Language". C'est la première formalisation du langage C. Ce standard a dominé jusqu'au milieu des années 1980. Il introduisait des concepts tels que les types de données, les structures.
ANSI C ou C89
Dans les années 1980, le besoin d'un standard plus formel s'est fait sentir, car plusieurs versions divergentes de C étaient utilisées. En 1989, l'ANSI (American National Standards Institute) publie le standard ANSI C ou C89. Cette version standardise plusieurs éléments du langage.
C90
Le standard C89 est adopté par l'ISO (International Organization for Standardization) en 1990, sous le nom de C90. Les deux versions, ANSI C et C90, sont donc pratiquement identiques.
C99
En 1999, une révision majeure du langage a été publiée sous le nom de C99. Cette version introduit de nombreuses améliorations, dont :
- La prise en charge des variables déclarées à n'importe quel endroit du code, pas seulement au début d'un bloc.
- Les tableaux dynamiques et les types entiers plus précis.
- Les boucles for avec des variables locales.
- De nouvelles fonctions mathématiques et des améliorations sur la précision des nombres flottants.
C11
En 2011, le standard C11 apporte des améliorations pour le rendre plus moderne tout en conservant sa simplicité. Il introduit :
- Le support des threads avec une bibliothèque standard pour le multi-threading.
- La gestion des alignements mémoire.
- De nouvelles fonctionnalités de sécurité
C18
En 2018, C18 qui est une version mineure qui clarifie et corrige certaines ambiguïtés du C11 sans ajouter de nouvelles fonctionnalités significatives. Elle se concentre essentiellement sur la correction de bugs et des révisions formelles du langage.
C23
Le langage évolue encore. Les nouveautés sont très spécifiques à des cas d'utilisation trés poussés.