eu preciso de fazer a função strSubst( char * str, const char *a, const char *b) que, na string str, substitui todas as ocorrências da string a pela string b, retornando o numero de substituições realizadas.
Exemplo:
char s[30]="isto parece simples";
strSubst(s,"parece", "foi") retorna 1 e deixa s com "isto foi simples".
o meu problema é o seguinte a string que lá está é maior que a string que se vai lá pôr neste caso, mas também pode ser maior, como é que eu faço a substituição ? Eu sei que existe a função strstr( char * s1, char * s2) que retorna o apontador para a primeira ocorrência de s2 em s1, se fossem as strings iguais era só substituir a partir do apontador retornado por esta função, assim não sei como fazer, alguém me pode ajudar ?
Obrigado
Exemplo:
char s[30]="isto parece simples";
strSubst(s,"parece", "foi") retorna 1 e deixa s com "isto foi simples".
o meu problema é o seguinte a string que lá está é maior que a string que se vai lá pôr neste caso, mas também pode ser maior, como é que eu faço a substituição ? Eu sei que existe a função strstr( char * s1, char * s2) que retorna o apontador para a primeira ocorrência de s2 em s1, se fossem as strings iguais era só substituir a partir do apontador retornado por esta função, assim não sei como fazer, alguém me pode ajudar ?
Obrigado