Vous êtes sur la page 1sur 14

Cours d’Informatique 2

Algorithmique &
Programmation_2 (Langage C)
Tronc Commun MIPC (S3)

Département Génie Informatique

2018/2019
Les chaînes de Caractères

 Définition:

• En C, les chaînes de caractères sont des tableaux de caractères. Leur manipulation est
alors similaire à celle des tableaux à une dimension

 Déclaration:
•char phrase[taille];
•Le compilateur réserve (taille-1) places en mémoire pour la chaînede
caractères.
•La dernière case est réservée au caractère NUL (‘\0’) qui indique la fin de la
chaîne de caractères.
•Pour un texte de n caractères, nous devons prévoir n+1 octets (un caractère
occupe un octet en mémoire). Le un octet de plus est réservé au caractère ‘\0 ‘
Exemples :
char NOM [20]; / * Définit une chaîne de 19 caractères*/
char PRENOM [20]; / * on déclare une chaîne de 19 caractères*/
char PHRASE[300]; / * on déclare une chaîne de 299 caractères*/
Les chaînes de caractères

 Initialisation:
char CHAINE[6] = {'H','e','l','l','o','\0'};
char CHAINE[] = "Hello";

Mémorisation:
char TXT[10] = " BONJOUR!";

On peut demander à l'utilisateur d'entrer une lettre en utilisant


le %c dans un scanf :

intmain(){
char lettre ;
scanf("%c", &lettre);
printf("%c\n", lettre);
return 0;}
Les chaînes sont des tableaux de char
Une chaîne de caractères n'est rien d'autre qu'un tableau de type char.

Une chaîne de caractère doit impérativement contenir un caractère spécial


à la fin de la chaîne,, appelé « caractère de fin de chaîne ». Ce caractère
s'écrit '\0'.
Les chaînes sont des tableaux de char
Lire et afficher les chaînes de caractères

On peut lire une chaîne entrée par l'utilisateur via un scanf,


en utilisant le symbole %s.
Les chaînes de Caractères

 Fonction spécifique pour la lecture d’une chaîne de caractère: gets

•Syntaxe: gets( Chaine)


•gets lit une ligne de de caractères du clavier et la copie à l'adresse indiquée par
la variable Chaine.
• Leretour à la ligne final est remplacé par le symbole de fin de chaîne '\0'.

Exemple
char LIEU[25];
printf("Entrez lieu de naissance : \n");
gets(LIEU);
Les chaînes de Caractères

 Fonction spécifique pour l’affichage d’une chaîne de caractère: puts

• Syntaxe: puts( Chaine)


• puts écrit la chaîne de caractères désignée par la variable Chaine sur l’écranet
provoque un retour à laligne.

Exemple:
char TEXTE[] = "Voici une première ligne.";
puts(TEXTE);
puts("Voici une deuxième ligne.");
Les chaînes de Caractères
 Fonctions pour manipulation de chaînes de caractères: bibliothèque <string.h>

Fonction Rôle
char *strcat(char *dest, const char *src); concatène la chaîne src à la suite de dest
int strcmp(const char *, const char*); compare deux chaînes numériquement
char*strcpy(char *destination, const char *source); copie une chaîne de caractères source
dans la chaîne destination
int strlen(const char* ch); retourne la longueur de la chaîne ch
(sans compter le caractère \0 ).
char *strchr(const char *, int); cherche un caractère dans une chaîne et
renvoie un pointeur sur le caractère, en cherchant depuis le
début
char*strstr(const char *ch1, const char *ch2); tro
ouve la première occurrence de la chaîne ch2 dans la
chaîne ch2
char *strlwr(const char *chaine) Coonvertit toutes les majuscules en minuscules sans
changer les autres caractères.

char *strupr(const char *chaine) onvertit toutes les minuscules en majuscules sans
Co
changer les autres
Les chaînes de Caractères
Exemple1: (Calculer la longueur d’une chaine):
Exemple2 :(Copier
(Copier une chaine dans une autre):
Exemple3 (Comparer deux chaines de caractères):
Exemple4 (Trier une chaine de caractères):

Vous aimerez peut-être aussi