Función que copie una cadena y sustituya palabras

Buenas, quisiera crear una función que copie una cadena y sustituya una determinada palabra por otra sin importar que esté en Mayúsculas o minúsculas. Lo escrito a continuación es lo que tengo por ahora, copio la cadena y la convierto a minúsculas, sé que tengo que usar strcmp y comparar las dos palabras, y supongo que después debería intercambiarlas pero no sé exactamente como hacerlo. Si alguien fuese tan amable de orientarme por favor...
char* sustitucion(const char *texto){
   int i;   
   char *copia;   
   copia = new char[strlen(texto)+1];       
   for (i=0;texto!=0;i++){        
      copia = tolower(texto);   
}       
copia=0;   
return copia;        
}

Añade tu respuesta

Haz clic para o