funcion "buscar y reemplazar" en c/c++

rojo
23 de Junio del 2003
Hola saludos a todos en el foro.

quisiera saber si alguien sabe como puedo hacer una funcion que busque una palabra en una cadena de caracteres y la reemplaze por otra en c ó c++

supongo que es algo asi pero no he podido dar con la funcion adecuada.
/*** inicio de la funcion ****/
char cadena[] = "esta es una cadena de texto";
char *punt;
main()
{
punt = cadena;
while(*punt!='n')
{
if(strcmp(*punt,"texto")==0)
*punt = "cambio";
}
printf("el nuevo valor de cadena es %s", cadena);

/***** fin del bloque programa****/

el resultado deberia de ser: "el nuevo valor de la cadena es: "esta es una cadena de "CAMBIO""

pero NO FUNCIONA!!! ya llevo casi un mes intentando de una y mil formas y no he podido lograrlo.... si alguien pudiera proporcionarme su ayuda lo agradeceria muchisisisisisimo

mariela
23 de Junio del 2003
Ayudame con esto porfa, buscar y reeemplazar
please

Arancha
23 de Junio del 2003
Cuando comparas si la cadena es igual a la que buscas, prueba a hacer lo siguiente:
if(strcmp(*punt,"texto")==0)
*punt = "cambio";
else
punt++;
Sino vas a estar siempre comparando la misma cadena.
De todas formas mirate la funcionalidad de la función strtok.
Suerte.