next up previous contents index
Next: Tableaux de taille inconnue Up: No Title Previous: Tableaux et passage par

Fonctions sur les chaînes

  

Si une chaîne doit être passée en argument à une fonction, le paramètre correspondant doit être de type char []. Comme pour tout paramètre de type tableau, les éléments de la chaîne sont passés par référence, donc peuvent être modifiés par la fonction. Contrairement à des tableaux quelconques, il n'est pas toujours nécessaire de passer en argument le nombre d'éléments de la chaîne, à cause du 0 terminal.

La fonction suivante permet de copier une chaîne dans une autre.  

 

void strcopy(char to[], const char from[]) {
  int i = 0;

  do {
    to[i] = from[i];
    i = i+1;
  } 
  while (from[i-1] != '\0');
}

Quand cette fonction est invoquée, son premier argument doit avoir été défini comme un tableau de caractères de taille strictement supérieure à la longueur de la chaîne constituant son deuxième argument.

La fonction strcpy, déclarée dans string.h et disponible dans la bibliothèque standard de C, ne diffère de strcopy que par le type de retour :  

char *strcpy(char to[], const char from[]);


Jean-Philippe Chancelier
9/29/1998