next up previous contents index
Next: Instruction d'aiguillage switch Up: No Title Previous: Types entiers

Caractères

    

La plupart des alphabets des langues occidentales peuvent être représentés dans un jeu de caractères codés sur 8 bits[*], ce qui autorise 28 = 256 caractères. En C, les caractères sont donc représentés par les valeurs du type char, c'est-à-dire par les entiers de 0 à 255.

Les constantes de type caractère sont notées entre deux apostrophes (en anglais single quote ) : 'A', 'Z', 'a', ';', '4', etc. S'y ajoutent des caractères spéciaux comme '\n' pour le retour à la ligne et '\t' pour une tabulation, ainsi que '\0', le caractère nul.

Un caractère peut être lu sur l'entrée standard avec la fonction scanf, et écrit sur la sortie standard avec printf en utilisant l'indicateur de conversion   %c :

  char c;
  scanf("%c", &c);
  printf("%c", c);

Le type char étant assimilé en C aux types entiers, les opérations arithmétiques lui sont applicables. Par exemple, pour convertir en minuscules les majuscules d'un texte, on appliquera à chaque caractère c l'instruction suivante :

if ('A'<=c && c<='Z') c = c + 'a' - 'A';

Un autre exemple d'opérations arithmétiques sur les caractères sera donné dans la définition d'une fonction strcmp de comparaison sur les chaînes de caractères.



Jean-Philippe Chancelier
9/29/1998