1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
| char* souschaine(char*ch , int deb, int fin){
char * s_ch=NULL;
int i;
if (ch!= NULL && deb<fin){
/*Calcul de la taille de la sous chaine*/
s_ch=malloc(sizeof(*s_ch)* (fin-deb+1)); /* par ex fin=6, deb=2,
* 6 char à recopier + 1 '\0'*/
if (s_ch!=NULL){
/*parcourir la chaine *ch entre les deux indice */
for(i=deb; i<fin; i++){
/* Copier chaque caractère dans la sous chaine*/
s_ch[i-deb]= ch[i];
}
s_ch[deb-fin+1]='\0';
}
}else{
fprintf("ERREUR");
exit (EXIT_FAILURE);
}
return s_ch;
} |
Partager