Merci de m'expliquer comment elle fonctionne le boucle while dans ce code

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <stdio.h>
 #include <string.h>
 #define CAR 'e' 
#define LGMAX 132
 main() 
{   
char texte[LGMAX+1] ;     
char * adr ;     
int ncar ;     
printf ("donnez un texte terminé par return\n") ;     
gets (texte) ;     
ncar = 0 ;     
adr = texte ;     
while ( adr=strchr(adr,CAR) )       
 { ncar++ ;          adr++ ;        }  
printf ("votre texte comporte %d fois le caractère %c", ncar, CAR) ; }