lg_chaine1) qui admette en paramètre un
tableau de caractères se terminant par un null, et qui rende le
nombre de caractères du tableau (null exclu).
lg_chaine2) qui implémente le même
interface que lg_chaine1, mais en donnant à son paramètre le type
pointeur vers char.
lg_chaine1 et lg_chaine2.
#include <stdio.h>
#define NULL_C '\0'
char ch1[] = "cette chaîne comporte 35 caractères";
char ch2[] = "et celle ci fait 30 caractères";
/*****************************************************************************/
/* */
/* lg_chaine1 */
/* */
/* But: */
/* calcule la longueur d'une chaîne de caractères */
/* */
/* Interface: */
/* ch : la chaîne de caractères */
/* valeur rendue : la longueur de ch */
/* */
/*****************************************************************************/
int lg_chaine1(const char ch[])
{
int i = 0;
while (ch[i] != NULL_C) i++; /* équivalent a while(ch[i]) i++; */
return(i);
}
/*****************************************************************************/
/* */
/* lg_chaine2 */
/* */
/* But: */
/* identique à celui de lg_chaine1 */
/* */
/*****************************************************************************/
int lg_chaine2(const char *ch)
{
int i = 0;
while (*ch != NULL_C)
{ i++; ch++; }
return(i);
}
/*****************************************************************************/
/* main */
/*****************************************************************************/
int main()
{
printf("la longeur de ch1 est %d\n",lg_chaine1(ch1));
printf("la longeur de ch2 est %d\n",lg_chaine2(ch2));
}