#include <stdio.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
char* strrpl(char *str, char* find, char *replace)
{
int i;
char *pt
= strstr(str
, find
), *firstStr
; if (!pt) return str;
firstStr
= calloc(100, sizeof(char)); // copy just until i find what i need to replace
// i tried to specify the length of firstStr just with pt - str
for(i
= 0; i
< strlen(firstStr
); i
++) str[i] = firstStr[i];
return str;
}
int main()
{
char *s, *s1, *s2;
s
= (char* )malloc(100 * sizeof(char)); s1
= (char* )malloc(100 * sizeof(char)); s2
= (char* )malloc(100 * sizeof(char));
printf("%s", strrpl
(s1
, s2
, s
)); return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CgojaW5jbHVkZSA8c3RkaW8uaD4KI2luY2x1ZGUgPHN0ZGxpYi5oPgojaW5jbHVkZSA8c3RyaW5nLmg+CgpjaGFyKiBzdHJycGwoY2hhciAqc3RyLCBjaGFyKiBmaW5kLCBjaGFyICpyZXBsYWNlKQp7CiAgICBpbnQgaTsKICAgIGNoYXIgKnB0ID0gc3Ryc3RyKHN0ciwgZmluZCksICpmaXJzdFN0cjsKICAgIGlmICghcHQpIHJldHVybiBzdHI7CiAgICBmaXJzdFN0ciA9IGNhbGxvYygxMDAsIHNpemVvZihjaGFyKSk7CiAgICAvLyBjb3B5IGp1c3QgdW50aWwgaSBmaW5kIHdoYXQgaSBuZWVkIHRvIHJlcGxhY2UKICAgIC8vIGkgdHJpZWQgdG8gc3BlY2lmeSB0aGUgbGVuZ3RoIG9mIGZpcnN0U3RyIGp1c3Qgd2l0aCBwdCAtIHN0cgogICAgc3RybmNweShmaXJzdFN0ciwgc3RyLCBzdHJsZW4oc3RyKSAtIHN0cmxlbihwdCkpOyAgCgogICAgc3RyY2F0KGZpcnN0U3RyLCByZXBsYWNlKTsKICAgIHN0cmNhdChmaXJzdFN0ciwgcHQgKyBzdHJsZW4oZmluZCkpOwoKICAgIGZvcihpID0gMDsgaSA8IHN0cmxlbihmaXJzdFN0cik7IGkrKykKICAgICAgICBzdHJbaV0gPSBmaXJzdFN0cltpXTsKICAgIHJldHVybiBzdHI7Cn0KCmludCBtYWluKCkKewogICAgY2hhciAqcywgKnMxLCAqczI7CiAgICBzID0gKGNoYXIqICltYWxsb2MoMTAwICogc2l6ZW9mKGNoYXIpKTsKICAgIHMxID0gKGNoYXIqICltYWxsb2MoMTAwICogc2l6ZW9mKGNoYXIpKTsKICAgIHMyID0gKGNoYXIqICltYWxsb2MoMTAwICogc2l6ZW9mKGNoYXIpKTsKICAgIHNjYW5mKCIlcyIsIHMxKTsKICAgIHNjYW5mKCIlcyIsIHMyKTsKICAgIHNjYW5mKCIlcyIsIHMpOwoKICAgIHByaW50ZigiJXMiLCBzdHJycGwoczEsIHMyLCBzKSk7CiAgICByZXR1cm4gMDsKfQo=