psgkiki | Bonjour à tous,
J'aimerais remplacer, dans une chaîne, un caractère par un autre. Par exemple, remplacer un '.' par un '_' dans la chaine "test.test1".
Voilà ce que j'ai fait et cela me met qu'il y a une erreur de segmentation.
Code :
- #include <stdio.h>
- #include <string.h>
- #include <stdlib.h>
- char* str_replace(char ancien,char nouveau,char* mot) {
- int longueur = strlen(mot),i;
- for(i=0;i<longueur;i++) {
- if(mot[i] == ancien) {
- mot[i] = nouveau;
- }
- }
- return mot;
- }
- int main(void)
- {
- char* mot = "test.test";
- char ancien = '.';
- char nouveau = '_';
- char *res;
- res = str_replace(ancien,nouveau,mot);
- printf("$jhp_id_%s\n", res);
- return 0;
- }
|
Merci pour votre aide |