Sélectionner une page

Alexis Kuperfis, directeur de programme chez IBM, nous parle du langage C, l’un des langages de programmation les plus utilisés. Il est aujourd’hui en deuxième position de l’index TIOBE, un célèbre classement de la popularité des langages de programmation. Le langage C a été inventé en 1972 par Dennis Ritchie et Ken Thompson, développeurs aux laboratoires Bell à partir du langage B, un langage désormais obsolète.

Aujourd’hui, de nombreux logiciels et la majorité des systèmes d’exploitation sont écrits en C. C’est, par exemple, le cas de Unix le noyau de Linux et le noyau de Windows.

Les caractéristiques du langage C

Alexis Kuperfis nous explique rapidement les différentes caractéristiques de ce langage. Tout d’abord, il est important de noter que c’est un langage compilé. Pour passer du code source à l’exécutable, il faut donc utiliser un programme appelé compilateur qui traduit le code source en exécutable en code binaire.

C’est aussi un langage bas niveau. C’est à dire que le développeur C doit souvent gérer lui-même la mémoire et ne peut pas faire d’opérations abstraites, contrairement à ce qui est possible dans des langages plus haut niveau comme Python ou Caml.

Ensuite, c’est un langage impératif. C’est-à-dire qu’il décrit une suite d’instructions à exécuter à suivre les unes après les autres.

C’est un langage procédural. Contrairement au BASIC ou à l’assembleur, il n’offre pas l’opportunité de se rendre n’importe où dans le programme. Pour ce faire, il faut utiliser des fonctions, des procédures.

Enfin, c’est un langage à typage statique. Dans le langage C chaque variable possède un type bien défini. Par exemple, les nombres entiers, les caractères qui ne changent pas au cours de l’exécution du programme.

Les avantages et les inconvénients de ce langage

Le langage possède de nombreux avantages : il est fondé sur un standard ouvert, depuis sa création, il a influencé de nombreux autres langages de programmation, il permet la maximisation de la performance et la plupart des développeurs le connaissent (de nombreux tutoriels sont donc disponibles en ligne pour les débutants).

Cependant comme tous les langages de programmation, il possède aussi quelques inconvénients. C’est un langage qui demande beaucoup de rigueur. De ce fait, un simple manque d’attention du développeur peut entraîner de graves bugs (risques de faille de cybersécurité pouvant être exploitable ou encore dépassement de tampon). De plus, certaines erreurs ne peuvent être détectées seulement à l’aide de logiciels tiers comme lint ou Valgrind.