Chat with us, powered by LiveChat

Découvrez le langage C

Pourquoi apprendre le langage C ?

Les raisons sont nombreuses. Découvrez ce langage avec des extraits de Wikipédia.

C est un langage de programmation impératif et généraliste. Inventé au début des années 1970 pour réécrire UNIX, C est devenu un des langages les plus utilisés. De nombreux langages plus modernes comme C++, C#, Java et PHP reprennent des aspects de C.

C est un langage de programmation impératif et généraliste. Il est qualifié de langage de bas niveau dans le sens où chaque instruction du langage est conçue pour être compilée en un nombre d’instructions machine assez prévisible en termes d’occupation mémoire et de charge de calcul. En outre, il propose un éventail de types entiers et flottants conçus pour pouvoir correspondre directement aux types de donnée supportés par le processeur. Enfin, il fait un usage intensif des calculs d’adresse mémoire avec la notion de pointeur.

Hormis les types de base, C supporte les types énumérés, composés, et opaques. Il ne propose en revanche aucune opération qui traite directement des objets de plus haut niveau (fichier informatique, chaîne de caractères, liste…). Ces types plus évolués doivent être traités en manipulant des pointeurs et des types composés. De même, le langage ne propose pas en standard la gestion de la programmation orientée objet, ni de système de gestion d’exceptions. Il existe des fonctions standards pour gérer les entrées-sorties et les chaînes de caractères, mais contrairement à d’autres langages, aucun opérateur spécifique pour améliorer l’ergonomie. Ceci rend aisé le remplacement des fonctions standards par des fonctions spécifiquement conçues pour un programme donné.

Ces caractéristiques en font un langage privilégié quand on cherche à maîtriser les ressources matérielles utilisées, le langage machine et les données binaires générées par les compilateurs étant relativement prévisibles. Ce langage est donc extrêmement utilisé dans des domaines comme la programmation embarquée sur microcontrôleurs, les calculs intensifs, l’écriture de systèmes d’exploitation et les modules où la rapidité de traitement est importante. Il constitue une bonne alternative au langage d’assemblage dans ces domaines, avec les avantages d’une syntaxe plus expressive et de la portabilité du code source. Le langage C a été inventé pour écrire le système d’exploitation UNIX, et reste utilisé pour la programmation système. Ainsi le noyau de grands systèmes d’exploitation comme Windows et Linux sont développés en grande partie en C.

En contrepartie, la mise au point de programmes en C, surtout s’ils utilisent des structures de données complexes, est plus difficile qu’avec des langages de plus haut niveau. En effet, dans un souci de performance, le langage C impose à l’utilisateur de programmer certains traitements (libération de la mémoire, vérification de la validité des indices sur les tableaux…) qui sont pris en charge automatiquement dans les langages de haut niveau.

Dépouillé des commodités apportées par sa bibliothèque standard, C est un langage simple, et son compilateur l’est également. Cela se ressent au niveau du temps de développement d’un compilateur C pour une nouvelle architecture de processeur : Kernighan et Ritchie estimaient qu’il pouvait être développé en deux mois car « on s’apercevra que les 80 % du code d’un nouveau compilateur sont identiques à ceux des codes des autres compilateurs existant déjà. ».

Contenu soumis à la licence CC-BY-SA 3.0. Source : Article C (langage) de Wikipédia en français (auteurs)