Hola, en su implementación veo el siguiente error
ahí Ud. esta tratando de reemplazar un caracter por varios caracteres, lo cuál no se puede ya que
frase[k] sólo tiene memoria para un carácter, y por cierto no por estar encerrados en apostrofes van a ser considerados todos como un caracter, ese es un error muy grave.
Creo que Ud. podría resolver su problema de la siguiente manera:
Código C++:
Ver original#include <iostream>
#include <string>
using namespace std;
int main() {
string str = "Hola mundo como estas";
char c = 'a';
string reemplazo = "xxx";
for (int i = 0; i < (int)str.length(); ++i) {
if(str[i]==c)
{
str.replace(i,1,reemplazo);
}
}
cout << str << endl;
return 0;
}