Muzete nekdo kouknout na nasledujici kod? Ma to najit v retezci vstup podretezec s1 a nahradit ho podretezcem s2... Uz fakt nevim, co je tam blbe...
V DevCpp zpusobi v XP hlasku "V programu ... nastala chyba a bude nutno jej uzavrit"... atd..??Kód:#include <string.h> #include <stdio.h> #include <conio.h> char *NajdiNahrad(char *vstup, char *s1, char *s2) { char *ptr, *pracovni, *usek; ptr=strstr(vstup, s1); /* ptr - ukazatel na misto vyskytu podretezce s1 */ strcpy(pracovni,""); if (ptr!=0) /* s1 byl ve vstupu nalezen */ { strncat(pracovni, vstup, strlen(vstup)-strlen(ptr)); /*Zkopiruji prvni cast az do zacatku s1 */ usek=ptr+strlen(s1); /* tohle je cast ZA retezcem s1 - s1 a s2 nemusi byt stejne dlouhe */ strncat(pracovni, s2, strlen(s2)); /* pripojime s2 */ strncat(pracovni, usek, strlen(usek)); /* a nakonec posledni kousek */ return(pracovni); } else { return(vstup); /*kdyz se s1 nenajde, vratime puvodni retezec */ } } int main(void) { char *vstup, *s1, *s2, *vysledek; strcpy(vstup,"Usama Bin Ladin"); strcpy(s1,"Bin"); strcpy(s2,"Bush"); vysledek=NajdiNahrad(vstup, s1, s2); printf("%s\n", vysledek); return(0); }
Jelikoz ted nejsem doma, kde mi to pod starym Borland C a W2k jelo celkem solidne, tak mam podezreni na kompilator/OS... Mohl by se najit nejaky dobrodinec a zkusit to nekde u sebe zkompilovat a pustit? Uz fakt nevim, co je tam blbe... Mozna jsem se nekde uklepl, protoze nebudu nic zastirat, praci s retezci v C moc rad nemam... A pro rejpaly : ANO, JE TO SEMINARKA PRO KAMOSE![]()





Odpověď s citací
VIP