Aller au contenu

Programmation C/Bibliothèque standard

Un livre de Wikilivres.


La bibliothèque standard du langage C peut paraître relativement pauvre par rapport à d'autres langages tout en un plus récents comme Python, Ruby, Perl, C# ou Java. Conçue avant tout avec un souci de portabilité, et en ayant en tête les contraintes matérielles limitées de certaines plate-formes auxquelles le C est aussi destiné, vous obtenez avec cela le plus petit dénominateur commun qui puisse être porté sur le plus grand nombre de plateformes. Les contraintes qu'ont subies l'ANSI, et le WG14 après lui, portant principalement sur les contraintes de portabilité sur certaines architectures parfois « exotiques », et la très forte contrainte de ne pas « casser » du code existant reposant sur un comportement déjà établi, voire normalisé, font que certains points connus pour être complexes, voire peu souhaitables, sont restés dans le langage et la bibliothèque standard.

Concevoir une application avec les seules fonctions présentes dans cette bibliothèque nécessite une très grande rigueur. Le WG14 ne s'étant pas fixé pour but d'étendre la bibliothèque standard de manière importante, il est plus que conseillé de se tourner vers des bibliothèques de plus haut niveau, afin d'éviter de réinventer inutilement la roue. Il en existe heureusement beaucoup, mais décrire ne serait-ce que ce qui existe est hors de la portée de cet ouvrage.

La bibliothèque standard permet toutefois de faire des traitements usuels avec peu d'efforts, pour peu qu'on ait conscience des dangers et des pièges qui sont parfois tendus. Les sections qui suivent permettront de voir un peu plus clair dans les méandres parfois très sombres où s'aventure le C.

Cours sur Wikiversity sur l'utilisation des fonctions standards du langage C.