Bonjour,

je souhaite à l'aide d'un programme simple remplacer une chaine de caractère par une autre, je souhaite remplacer par pour se faire, voici mon programme :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <iostream>
#include <string>
using namespace std;
 
int main ()
{
  string base="[coucou] [ca] [va]";
 
  string str=base;
 
  while ( str.find("[") < str.length() ) {
    str.replace(str.find("["),1,"\[");
  }  
 
  cout << str << endl;
 
  system("PAUSE");
  return 0;
}

Lorsque j'utilise cette ligne :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
str.replace(str.find("["),1,"\[");
le programme plante

Lorsque j'utilise celle ci :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
str.replace(str.find("["),1,"\\[");
jobtiens :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\[coucou] [ca] [va]
Appuyez sur une touche pour continuer...
quelqu'un connait-il la solution ?