0% ont trouvé ce document utile (0 vote)
59 vues11 pages

Introduction aux chaînes de caractères en C

Une chaîne de caractères est une suite de caractères alphanumériques terminée par le caractère nul ‘\0’. Le document explique comment définir, initialiser, écrire, lire et manipuler des chaînes de caractères en C, ainsi que les fonctions de traitement disponibles dans la bibliothèque string.h. Il aborde également l'utilisation de pointeurs pour manipuler des chaînes et la gestion des tableaux de chaînes de caractères.

Transféré par

segdafranck14
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
59 vues11 pages

Introduction aux chaînes de caractères en C

Une chaîne de caractères est une suite de caractères alphanumériques terminée par le caractère nul ‘\0’. Le document explique comment définir, initialiser, écrire, lire et manipuler des chaînes de caractères en C, ainsi que les fonctions de traitement disponibles dans la bibliothèque string.h. Il aborde également l'utilisation de pointeurs pour manipuler des chaînes et la gestion des tableaux de chaînes de caractères.

Transféré par

segdafranck14
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Les chaînes de

caractères
2 Définition et initialisation d’une chaîne

Une chaîne de caractères est une suite de caractères


alphanumériques terminée par le caractère ‘\0’.
Les définitions suivantes char texte[8]= ‘’bonjour’’; ou char texte []=
‘’bonjour’’; permettent de réserver un tableau de 8 éléments dans
lequel sont stockés les 7 caractères du mot «bonjour» suivis par le
caractère nul ‘\0’ ( c’est-à-dire dont le code ASCII est 0).

Remarques :
 ne pas confondre les guillemets ‘’ ’’ de la chaîne de caractères et les
apostrophes ‘ ’ qui entourent un caractère.
 Toute chaîne se termine automatiquement par ‘\0’
3 Ecriture d’une chaîne

En considérant la chaîne comme un tableau, on peut réaliser l’affichage caractère


par caractère jusqu’au moment où le caractère nul est atteint.

int i=0; char phrase []= ‘’il fait beau’’;


while (phrase[i]) printf(’’%c’’, phrase[i++]);

On peut également utiliser printf avec le format %s.


On peut aussi utiliser la fonction puts qui n’affiche qu’une chaîne de caractère à la
fois et se termine par une fin de ligne.

char phrase []= ‘’il fait beau’’;


puts(phrase);
4 Lecture d’une chaîne

La fonction scanf permet de lire les caractères avec le format %s mais la lecture
s’effectue jusqu’à la rencontre d’un séparateur (espace, tabulation ou retour chariot).
La chaine est complétée par le caractère ‘\0’.

char nom[20]; printf(‘’entrez le nom :’’);


scanf(‘’%s’’, nom);printf(’’le nom est %s’’, nom);

Si on désire saisir des chaînes avec des espaces ou des tabulations, il faut utiliser la
fonction gets.

char nom[20]; printf(‘’entrez le nom :’’);


gets(nom); printf(’’le nom est %s’’, nom);
5 Pointeurs et chaînes de caractères
 On peut manipuler toute chaîne de caractères à l'aide d'un pointeur sur un objet
de type char. On peut faire subir à une chaîne définie par:
char * chaine;
des affectations comme
chaine = "ceci est une chaine";
et toute opération valide sur les pointeurs, comme l'instruction chaine++;
6 Quelques fonctions de traitement de
chaînes de caractères

Le C fournit un grand nombre de fonctions de chaînes (copie, concaténation,


recherche d’occurrence, conversion, initialisation,…). Ces fonctions sont
déclarées dans le fichier en-tête string.h .
7 Quelques fonctions de traitement de
chaînes de caractères

 Longueur d’une chaine


La fonction strlen fournit la longueur d’une chaîne de caractères. Le caractère
nul de fin de chaîne n’est pas compté.

int strlen (const char * chaîne);


8 Quelques fonctions de traitement de
chaînes de caractères
 Copie d’une chaine
La fonction strcpy permet de copier une chaîne source dans une chaîne destination ( y compris
le caractère nul de fin de chaîne). La fonction renvoie l’adresse de la chaîne destination.
char * strcpy (char * destination, char * source);

La fonction strcpy copie au plus max caractères de la chaîne source dans la chaîne
destination.
char * strcpy (char * destination, char * source, int max);
9 Quelques fonctions de traitement de
chaînes de caractères
 Concaténation de deux chaînes
La chaîne source peut être ajoutée à la fin de la chaîne destination avec la fonction
strcat. La fonction renvoie l’adresse de la chaîne destination.
char * strcat (char * destination, char * source);

La fonction strcat ajoute au plus max caractères de la chaîne source à la fin de la chaîne
destination.
char * strcat (char * destination, char * source, int max);
10 Quelques fonctions de traitement de
chaînes de caractères
 Comparaison de deux chaînes
La fonction strcmp compare une chaîne chaine1 avec une chaîne chaine2. la comparaison
s’arrête quand deux caractères sont différents ou quand une chaîne est terminée. La fonction
renvoie 0 si les chaînes sont identiques.
int strcmp (char * chaine1, char * chaine2);

La fonction strcmp compare deux chaînes en se limitant aux max premiers caractères.
int strcmp (char * chaine1, char * chaine2, int max);
11 Tableaux de chaînes de caractères
 Pour traiter un ensemble de chaînes de caractères, on peut définir un
tableau de chaînes, c’est-à-dire un tableau à deux dimensions de
caractères.

Exemple : char jours[7][9]={‘’lundi’’, ’’mardi’’, ’’mercredi’’, ‘’jeudi’’,


‘’vendredi’’, ‘’samedi’’, ‘’dimanche’’};

Vous aimerez peut-être aussi