Vous êtes sur la page 1sur 5

RÉVISION DU LANGAGE C

PARTIE 1_2
MINISTÈRE DE L’ENSEIGNEMENT SUPÉRIEUR DE LA RECHERCHE SCIENTIFIQUE
UNIVERSITÉ TUNIS EL MANAR

‫اﻟﻤﺪرﺳﺔ اﻟﻮﻃﻨﻴﺔ ﻟﻠﻤﻬﻨﺪﺳﻴﻦ ﺑﺘﻮﻧﺲ‬


ÉCOLE NATIONALE D’INGÉNIEURS DE
TUNIS

Traitement des chaînes de


caractères

Proposée par Mme Kallel Amira


2019-2020

1
 Partie 1_1:
LA STRUCTURE D’UN PROGRAMME
DÉCLARATION D'UNE VARIABLE
TYPES DE VARIABLE
OPÉRATEURS DE BASE
AFFICHAGE DE LA VALEUR D'UNE VARIABLE
RÉCUPÉRER UNE VARIABLE SAISIE
INSTRUCTIONS DE CONTRÔLE
LES FONCTIONS
LES TABLEAUX STATIQUES
LES POINTEURS
LE NOM D'UN TABLEAU ET LES POINTEURS

LES FONCTIONS ET LE PASSAGE D'ARGUMENTS PAR POINTEUR


2
TRAITEMENT DES CHAÎNES DE
CARACTÈRES
 Rappelons qu’en C une chaine de caractères est
un tableau unidimensionnel de caractères dont le
dernier caractère significatif est le caractère ‘\0’.
 Exemple:
char chaine [10];
 Comme on peut déclarer une chaine par un
pointeur
char * chaine;
 Initialiser une chaine de caractère
Chaine= "bonjour "
……Strcpy (chaine, "bonjour " ) ;
3
TRAITEMENT DES CHAÎNES DE
CARACTÈRES
 LES FONCTIONS PORTANT SUR LES CHAÎNES
Le fichier string.h comprend un grand nombre de déclarations des fonctions
ayant comme arguments des chaînes de caractères et retournant comme
résultat un entier ou une chaîne de caractères.
 char* strcat (char * Ch1, char * Ch2)
concatène la chaîne Ch1 à la suite de la chaîne Ch2; retourne Ch1.

 int strcmp (char * Ch1, char * Ch2)


la fonction retourne 0 si les deux chaînes de caractères sont identiques

 char* strcpy (char * Ch1, char * Ch2)


copie Ch2 dans Ch1 et retourne Ch1 (y compris le caractère \0).

 int strlen (const char * chaine)


retourne le nombre de caractères de chaîne, sans compter le caractère '\0'.
4
TRAITEMENT DES CHAÎNES DE
CARACTÈRES
 POUR LIRE ET ÉCRIRE DES CHAÎNES
Le langage C offre plusieurs possibilités de lecture ou
d'écriture de chaînes :
1. - l'utilisation du code de format %s dans les fonctions
printf et scanf,
2. - les fonctions spécifiques de lecture (gets) ou
d'affichage (puts) d'une chaîne (une seule à la fois).
#include <stdio.h>
main()
{ char nom[20], prenom[20], ville[25] ;
printf ("quelle est votre ville : ") ;
gets (ville) ;
printf ("donnez votre nom et votre prénom : ") ;
scanf ("%s %s", nom, prenom) ;
printf ("bonjour cher %s %s qui habitez à ", prenom, nom) ;5
puts (ville) ;
}