Cita:
Iniciado por CapacProg 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;
}
Buenas noches; tal y como te he dicho antes, el código que me has dado me es totalmente útil pero hay un pequeño problema, que es el siguiente:
S
i quiero reemplazar por el caracter al que se corresponde en un determinado momento un array (arrayy[numero]), sólo puedo
escribirlo una vez dentro del apartado de replace() correspondiente al texto sustituto, por lo que
no puedo obtener resultados que den: (arrayy[numero]) + "(lo que sea)" + (arrayy[numero]), que es algo así (lo que querría).
Saludos