Ver Mensaje Individual
  #2 (permalink)  
Antiguo 08/01/2012, 18:03
Avatar de CapacProg
CapacProg
 
Fecha de Ingreso: marzo-2010
Ubicación: Lima - Perú
Mensajes: 324
Antigüedad: 14 años, 1 mes
Puntos: 71
Respuesta: ¿Cómo sustituir un caracter de un string por otro múltiple?

Hola, en su implementación veo el siguiente error
Código C++:
Ver original
  1. frase[k] = 'gag';
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
  1. #include <iostream>
  2. #include <string>
  3. using namespace std;
  4.  
  5. int main() {
  6.     string str = "Hola mundo como estas";
  7.     char c = 'a';
  8.     string reemplazo = "xxx";
  9.  
  10.     for (int i = 0; i < (int)str.length(); ++i) {
  11.         if(str[i]==c)
  12.         {
  13.             str.replace(i,1,reemplazo);
  14.         }
  15.     }
  16.  
  17.     cout << str << endl;
  18.     return 0;
  19. }
__________________
%
El mejor guerrero no es el que triunfa siempre sino el que vuelve sin miedo a la batalla.
%