Bonjour,
J’ai un problème avec un de mes algo en C, je dois créer une fonction void remplace(char* ch, char c1, char c2) qui remplace toutes les occurrences de c1 dans ch par c2.
Voilà mon algo :
1 2 3 4 5 6 7 8 | void remplace(char* ch, char c1, char c2) { if(*ch=='\0') EXIT_SUCCESS; if(*ch==c1) *ch=c2; remplace(ch+1,c1,c2); } |
Voilà mon main :
1 2 3 4 | char tab[10]="bonjour"; remplace(tab,'o','a'); printf("%s\n",tab); return 0; |
J’arrive à compiler mais à l’exécution j’obtiens une erreur de segmentation, j’ai essayé d’autre syntaxes pour les pointeurs pour écrire la fonction mais ça n’a rien changé, j’ai essayé d’augmenter la taille de la chaîne dans le main mais ça n’a pas marché non plus.
Avez-vous une idée ?
Merci bien !
+0
-0