Académique Documents
Professionnel Documents
Culture Documents
Langage C Chapitre05
Langage C Chapitre05
Chaîne et tableau
Chaîne en langage C
Tableau de chaînes en langage C
3 décembre 2022
Hassen NAKBI :: Université de Sousse, ESSTHS Chapitre 5 : Chaîne de caractères 3 décembre 2022 1 / 31
Introduction
Chaîne et tableau
Chaîne en langage C
Tableau de chaînes en langage C
Introduction
Chaîne
Une chaîne de caractères est une séquence de caractères
formant des paragraphes et du texte.
Une chaîne peut contenir des lettres, des chires, des
caractères spéciaux et des caractères non imprimables à l'écran.
Chaque caractère composant d'une chaîne possède un code
ASCII sous forme entier constant en binaire compris en 0 et
127.
Une chaîne est modélisée dans la mémoire comme un
ensemble des cases linéaires, ou chaque caractère occupe une
seule case.
Hassen NAKBI :: Université de Sousse, ESSTHS Chapitre 5 : Chaîne de caractères 3 décembre 2022 2 / 31
Introduction Dénition d'une chaîne
Chaîne et tableau Lecture et écriture d'une chaîne
Chaîne en langage C Accès aux éléments d'une chaîne
Tableau de chaînes en langage C Manipulation d'une chaîne
Tableau de chaînes
2 Chaîne et tableau
Dénition d'une chaîne
Lecture et écriture d'une chaîne
Accès aux éléments d'une chaîne
Manipulation d'une chaîne
Tableau de chaînes
Hassen NAKBI :: Université de Sousse, ESSTHS Chapitre 5 : Chaîne de caractères 3 décembre 2022 3 / 31
Introduction Dénition d'une chaîne
Chaîne et tableau Lecture et écriture d'une chaîne
Chaîne en langage C Accès aux éléments d'une chaîne
Tableau de chaînes en langage C Manipulation d'une chaîne
Tableau de chaînes
Chaîne en algorithmique
En algorithmique
CONST N = taille
TYPE CHN = Tableau[1..N] de caractères
VAR ST : CHN
Hassen NAKBI :: Université de Sousse, ESSTHS Chapitre 5 : Chaîne de caractères 3 décembre 2022 4 / 31
Introduction Dénition d'une chaîne
Chaîne et tableau Lecture et écriture d'une chaîne
Chaîne en langage C Accès aux éléments d'une chaîne
Tableau de chaînes en langage C Manipulation d'une chaîne
Tableau de chaînes
2 Chaîne et tableau
Dénition d'une chaîne
Lecture et écriture d'une chaîne
Accès aux éléments d'une chaîne
Manipulation d'une chaîne
Tableau de chaînes
Hassen NAKBI :: Université de Sousse, ESSTHS Chapitre 5 : Chaîne de caractères 3 décembre 2022 5 / 31
Introduction Dénition d'une chaîne
Chaîne et tableau Lecture et écriture d'une chaîne
Chaîne en langage C Accès aux éléments d'une chaîne
Tableau de chaînes en langage C Manipulation d'une chaîne
Tableau de chaînes
Chaîne en algorithmique
Lecture et écriture d'une chaîne
Pour une chaîne dénie en mémoire, nous pouvons initialiser avec
une suite de caractères délimitée entre guillemets, elle peut
également être lue à partir du clavier, ou bien acher leur contenu
à l'écran sans utiliser une structure itérative.
Initialisation, lecture et écriture d'une chaîne
VAR ST1,ST2 : CHN
DÉBUT
ST1 ←−"Bonjour"
Écrire(ST1)
Lire(ST2)
Écrire(ST2, " de taille ", longueur(ST2))
FIN
Hassen NAKBI :: Université de Sousse, ESSTHS Chapitre 5 : Chaîne de caractères 3 décembre 2022 6 / 31
Introduction Dénition d'une chaîne
Chaîne et tableau Lecture et écriture d'une chaîne
Chaîne en langage C Accès aux éléments d'une chaîne
Tableau de chaînes en langage C Manipulation d'une chaîne
Tableau de chaînes
2 Chaîne et tableau
Dénition d'une chaîne
Lecture et écriture d'une chaîne
Accès aux éléments d'une chaîne
Manipulation d'une chaîne
Tableau de chaînes
Hassen NAKBI :: Université de Sousse, ESSTHS Chapitre 5 : Chaîne de caractères 3 décembre 2022 7 / 31
Introduction Dénition d'une chaîne
Chaîne et tableau Lecture et écriture d'une chaîne
Chaîne en langage C Accès aux éléments d'une chaîne
Tableau de chaînes en langage C Manipulation d'une chaîne
Tableau de chaînes
Chaîne en algorithmique
Chaîne en algorithmique
Les caractères composants d'une chaîne peuvent être accédés par
leur index en utilisant l'opérateur d'indexation [ ].
Hassen NAKBI :: Université de Sousse, ESSTHS Chapitre 5 : Chaîne de caractères 3 décembre 2022 8 / 31
Introduction Dénition d'une chaîne
Chaîne et tableau Lecture et écriture d'une chaîne
Chaîne en langage C Accès aux éléments d'une chaîne
Tableau de chaînes en langage C Manipulation d'une chaîne
Tableau de chaînes
2 Chaîne et tableau
Dénition d'une chaîne
Lecture et écriture d'une chaîne
Accès aux éléments d'une chaîne
Manipulation d'une chaîne
Tableau de chaînes
Hassen NAKBI :: Université de Sousse, ESSTHS Chapitre 5 : Chaîne de caractères 3 décembre 2022 9 / 31
Introduction Dénition d'une chaîne
Chaîne et tableau Lecture et écriture d'une chaîne
Chaîne en langage C Accès aux éléments d'une chaîne
Tableau de chaînes en langage C Manipulation d'une chaîne
Tableau de chaînes
Chaîne en algorithmique
Hassen NAKBI :: Université de Sousse, ESSTHS Chapitre 5 : Chaîne de caractères 3 décembre 2022 10 / 31
Introduction Dénition d'une chaîne
Chaîne et tableau Lecture et écriture d'une chaîne
Chaîne en langage C Accès aux éléments d'une chaîne
Tableau de chaînes en langage C Manipulation d'une chaîne
Tableau de chaînes
Chaîne en algorithmique
Hassen NAKBI :: Université de Sousse, ESSTHS Chapitre 5 : Chaîne de caractères 3 décembre 2022 11 / 31
Introduction Dénition d'une chaîne
Chaîne et tableau Lecture et écriture d'une chaîne
Chaîne en langage C Accès aux éléments d'une chaîne
Tableau de chaînes en langage C Manipulation d'une chaîne
Tableau de chaînes
Chaîne en algorithmique
Hassen NAKBI :: Université de Sousse, ESSTHS Chapitre 5 : Chaîne de caractères 3 décembre 2022 12 / 31
Introduction Dénition d'une chaîne
Chaîne et tableau Lecture et écriture d'une chaîne
Chaîne en langage C Accès aux éléments d'une chaîne
Tableau de chaînes en langage C Manipulation d'une chaîne
Tableau de chaînes
Chaîne en algorithmique
2 Chaîne et tableau
Dénition d'une chaîne
Lecture et écriture d'une chaîne
Accès aux éléments d'une chaîne
Manipulation d'une chaîne
Tableau de chaînes
Hassen NAKBI :: Université de Sousse, ESSTHS Chapitre 5 : Chaîne de caractères 3 décembre 2022 14 / 31
Introduction Dénition d'une chaîne
Chaîne et tableau Lecture et écriture d'une chaîne
Chaîne en langage C Accès aux éléments d'une chaîne
Tableau de chaînes en langage C Manipulation d'une chaîne
Tableau de chaînes
Tableau de chaînes
Tableau de chaînes
Lecture et Achage
CONST N = 4 , M = 9
TYPE chaîne = Tableau[1..M] de caractères
TYPE MAT = Tableau[1.. N] de chaîne
VAR TABS : MAT
DÉBUT
Pour i de 1 à N pas ←− 1 faire
Lire(TABS[i][])
FinPour
Pour i de 1 à N pas ←− 1 faire
Écrire(TABS[i][])
FinPour
FIN
Hassen NAKBI :: Université de Sousse, ESSTHS Chapitre 5 : Chaîne de caractères 3 décembre 2022 16 / 31
Introduction Dénition d'une chaîne en langage C
Chaîne et tableau Initialisation d'une chaîne
Chaîne en langage C Lecture et achage d'une chaîne
Tableau de chaînes en langage C Manipulation d'une chaîne
Conversion vers une chaîne
3 Chaîne en langage C
Dénition d'une chaîne en langage C
Initialisation d'une chaîne
Lecture et achage d'une chaîne
Manipulation d'une chaîne
Conversion vers une chaîne
Hassen NAKBI :: Université de Sousse, ESSTHS Chapitre 5 : Chaîne de caractères 3 décembre 2022 17 / 31
Introduction Dénition d'une chaîne en langage C
Chaîne et tableau Initialisation d'une chaîne
Chaîne en langage C Lecture et achage d'une chaîne
Tableau de chaînes en langage C Manipulation d'une chaîne
Conversion vers une chaîne
Chaîne en langage c
Hassen NAKBI :: Université de Sousse, ESSTHS Chapitre 5 : Chaîne de caractères 3 décembre 2022 18 / 31
Introduction Dénition d'une chaîne en langage C
Chaîne et tableau Initialisation d'une chaîne
Chaîne en langage C Lecture et achage d'une chaîne
Tableau de chaînes en langage C Manipulation d'une chaîne
Conversion vers une chaîne
3 Chaîne en langage C
Dénition d'une chaîne en langage C
Initialisation d'une chaîne
Lecture et achage d'une chaîne
Manipulation d'une chaîne
Conversion vers une chaîne
Hassen NAKBI :: Université de Sousse, ESSTHS Chapitre 5 : Chaîne de caractères 3 décembre 2022 19 / 31
Introduction Dénition d'une chaîne en langage C
Chaîne et tableau Initialisation d'une chaîne
Chaîne en langage C Lecture et achage d'une chaîne
Tableau de chaînes en langage C Manipulation d'une chaîne
Conversion vers une chaîne
Chaîne en langage c
Chaîne initialisée
Une chaîne est initialisée avec une chaîne littérale sera complétée
d'une façon automatique par un symbole '\0'.
int main( ) {
char ST1[20] ;
char ST2[20] = {'g','p','k',91,'j','r','2','d','\0' } ;
char ST3[ ] = "Bonsoir" ;
ST1[0] = 'z' ;
ST1[1] = 'f' + 2 ;
ST1[2]='A' + rand()%26 ;
return 0 ; }
Hassen NAKBI :: Université de Sousse, ESSTHS Chapitre 5 : Chaîne de caractères 3 décembre 2022 20 / 31
Introduction Dénition d'une chaîne en langage C
Chaîne et tableau Initialisation d'une chaîne
Chaîne en langage C Lecture et achage d'une chaîne
Tableau de chaînes en langage C Manipulation d'une chaîne
Conversion vers une chaîne
3 Chaîne en langage C
Dénition d'une chaîne en langage C
Initialisation d'une chaîne
Lecture et achage d'une chaîne
Manipulation d'une chaîne
Conversion vers une chaîne
Hassen NAKBI :: Université de Sousse, ESSTHS Chapitre 5 : Chaîne de caractères 3 décembre 2022 21 / 31
Introduction Dénition d'une chaîne en langage C
Chaîne et tableau Initialisation d'une chaîne
Chaîne en langage C Lecture et achage d'une chaîne
Tableau de chaînes en langage C Manipulation d'une chaîne
Conversion vers une chaîne
Chaîne en langage c
Hassen NAKBI :: Université de Sousse, ESSTHS Chapitre 5 : Chaîne de caractères 3 décembre 2022 22 / 31
Introduction Dénition d'une chaîne en langage C
Chaîne et tableau Initialisation d'une chaîne
Chaîne en langage C Lecture et achage d'une chaîne
Tableau de chaînes en langage C Manipulation d'une chaîne
Conversion vers une chaîne
Chaîne en langage c
Hassen NAKBI :: Université de Sousse, ESSTHS Chapitre 5 : Chaîne de caractères 3 décembre 2022 23 / 31
Introduction Dénition d'une chaîne en langage C
Chaîne et tableau Initialisation d'une chaîne
Chaîne en langage C Lecture et achage d'une chaîne
Tableau de chaînes en langage C Manipulation d'une chaîne
Conversion vers une chaîne
3 Chaîne en langage C
Dénition d'une chaîne en langage C
Initialisation d'une chaîne
Lecture et achage d'une chaîne
Manipulation d'une chaîne
Conversion vers une chaîne
Hassen NAKBI :: Université de Sousse, ESSTHS Chapitre 5 : Chaîne de caractères 3 décembre 2022 24 / 31
Introduction Dénition d'une chaîne en langage C
Chaîne et tableau Initialisation d'une chaîne
Chaîne en langage C Lecture et achage d'une chaîne
Tableau de chaînes en langage C Manipulation d'une chaîne
Conversion vers une chaîne
Manipulation en langage c
Hassen NAKBI :: Université de Sousse, ESSTHS Chapitre 5 : Chaîne de caractères 3 décembre 2022 25 / 31
Introduction Dénition d'une chaîne en langage C
Chaîne et tableau Initialisation d'une chaîne
Chaîne en langage C Lecture et achage d'une chaîne
Tableau de chaînes en langage C Manipulation d'une chaîne
Conversion vers une chaîne
Bibliothèque <string.h>
Fonction Description
strlen(str1) Renvoi un entier longueur d'une chaîne str1.
strcat(str1,str2) Elle fait ajouter str2 à la n de chaîne str1.
strncat(str1,str2,n) Elle fait ajouter au plus n caractères de str2 à
la n de chaîne str1.
strcpy(str1,str2) Elle fait copier le contenu de str2 dans le début
str1.
strncpy(str1,str2,n) Elle fait copier les n caractères de str2 dans le
début str1.
Hassen NAKBI :: Université de Sousse, ESSTHS Chapitre 5 : Chaîne de caractères 3 décembre 2022 26 / 31
Introduction Dénition d'une chaîne en langage C
Chaîne et tableau Initialisation d'une chaîne
Chaîne en langage C Lecture et achage d'une chaîne
Tableau de chaînes en langage C Manipulation d'une chaîne
Conversion vers une chaîne
Bibliothèque <string.h>
Fonction Description
strcmp(str1,str2) Renvoi un entier positif si le code ASCII de str1
est supérieur à str2, un entier négatif dans la
cas inverse et un entier nul si les codes ASCII
sont égaux.
strncmp(str1,str2,n) Renvoi un entier positif si les n caractères de
str1 est supérieur à str2, un entier négatif dans
la cas inverse et un entier nul si les codes ASCII
sont égaux.
Hassen NAKBI :: Université de Sousse, ESSTHS Chapitre 5 : Chaîne de caractères 3 décembre 2022 27 / 31
Introduction Dénition d'une chaîne en langage C
Chaîne et tableau Initialisation d'une chaîne
Chaîne en langage C Lecture et achage d'une chaîne
Tableau de chaînes en langage C Manipulation d'une chaîne
Conversion vers une chaîne
3 Chaîne en langage C
Dénition d'une chaîne en langage C
Initialisation d'une chaîne
Lecture et achage d'une chaîne
Manipulation d'une chaîne
Conversion vers une chaîne
Hassen NAKBI :: Université de Sousse, ESSTHS Chapitre 5 : Chaîne de caractères 3 décembre 2022 28 / 31
Introduction Dénition d'une chaîne en langage C
Chaîne et tableau Initialisation d'une chaîne
Chaîne en langage C Lecture et achage d'une chaîne
Tableau de chaînes en langage C Manipulation d'une chaîne
Conversion vers une chaîne
Fonction sprintf()
Pour produire une nouvelle chaîne de caractères par des valeurs
numériques, la fonction prédénie sprintf() fait une opération de
conversion des valeurs entières et réelles vers une chaîne.
int sprintf(chaine, "format ",variables) ;
Hassen NAKBI :: Université de Sousse, ESSTHS Chapitre 5 : Chaîne de caractères 3 décembre 2022 29 / 31
Introduction Dénition d'une chaîne en langage C
Chaîne et tableau Initialisation d'une chaîne
Chaîne en langage C Lecture et achage d'une chaîne
Tableau de chaînes en langage C Manipulation d'une chaîne
Conversion vers une chaîne
Hassen NAKBI :: Université de Sousse, ESSTHS Chapitre 5 : Chaîne de caractères 3 décembre 2022 30 / 31
Introduction
Chaîne et tableau
Chaîne en langage C
Tableau de chaînes en langage C
Tableau de chaînes