Les composants élémentaires du C
Un programme en langage C est constitué des six groupes de composants élémentaires suivants :
• les identificateurs,
• les mots-clefs,
• les constantes,
• les chaînes de caractères,
• les opérateurs,
• les signes de ponctuation.
On peut ajouter à ces six groupes les commentaires, qui sont enlevés par le préprocesseur.
1 . Les identificateurs
Le rôle d'un identificateur est de donner un nom à une entité du programme. Plus précisément, un identificateur
peut désigner :
- un nom de variable ou de fonction,
- un type défini par typedef, struct, union ou enum,
- une étiquette.
Un identificateur est une suite de caractères parmi :
- les lettres (minuscules ou majuscules, mais non accentuées),
- les chiffres,
- le ``blanc souligné'' (_).
Le premier caractère d'un identificateur ne peut pas être un chiffre. Par exemple, var1, tab_23 ou _deb sont des
identificateurs valides ; par contre, 1i et i:j ne le sont pas. Il est cependant déconseillé d'utiliser « _ » comme
premier caractère d'un identificateur car il est souvent employé pour définir les variables globales de
l'environnement C.
ATTENTION : Les majuscules et minuscules sont différenciées.
Le compilateur peut tronquer les identificateurs au-delà d'une certaine longueur. Cette limite dépend des
implémentations, mais elle est toujours supérieure à 31 caractères. (Le standard dit que les identificateurs
externes, c'est-à-dire ceux qui sont exportés à l'édition de lien, peuvent être tronqués à 6 caractères, mais
tous les compilateurs modernes distinguent au moins 31 caractères).
2 . Les mots-clefs
Un certain nombre de mots, appelés mots-clefs, sont réservés pour le langage lui-même et ne peuvent pas être
utilisés comme identificateurs. L'ANSI C compte 32 mots clefs :
auto - const - double - float - int - short - struct - unsigned
break - continue - else - for - long - signed - switch - void
case - default - enum - goto - register - sizeof - typedef - volatile
char - do - extern - if - return - static - union - while
que l'on peut ranger en catégories :
• les spécificateurs de stockage
auto register static extern typedef
• les spécificateurs de type
char double enum float int long short signed struct union unsigned void
• les qualificateurs de type
const volatile
• les instructions de contrôle
break case continue default do else for goto if switch while
• divers
return sizeof
3 . Les commentaires
Un commentaire débute par /* et se termine par */. Par exemple,
/* Ceci est un commentaire */
On ne peut pas imbriquer des commentaires. Quand on met en commentaire un morceau de programme, il faut
donc veiller à ce que celui-ci ne contienne pas de commentaire.