Novo

Forum kao aplikacija na telefonu

Dodajte forum na početni ekran i koristite ga kao aplikaciju, sa menijem na dnu ekrana.

  • 2 odgovora
  • 3.044 pregleda

Najnovija ↓

Rekurzivna procedura koja uklanja karakter iz stringa 05.12.2010. u 00:24 · pre 194 meseca #1
Ukloniti sva pojavljivanja karaktera c iz stringa str (rekurzivno).
Meni se logika čini ok, ali javlja mi segmentation error kad dođe do strcpy(str,str+1). Ima li neko ideju u čemu je problem?


Code:
void Ukloni(char *str,char c)
{
    if (strlen(str)==0)
       return;
    else
    {
         if (str[0]==c)
         {
            strcpy(str,str+1);
            return Ukloni(str,c);
         }
         else return Ukloni(str+1,c);
    }

}
Re: Rekurzivna procedura koja uklanja karakter iz stringa 05.12.2010. u 16:43 · pre 194 meseca #3
Pozdrav,

ne bi trebalo da ti strcpy(str, str+1) nikad vraca segfault posto kopiras string manje duzine. Okaci ostatak koda ako ti nije problem. Posebno deo gde alociras memoriju za string i gde mu dodeljujes vrednost posto ovo najvise lici na 'los' string prosledjen funkciji.
Potpis
xxx
mali mali mali kamičak...nebo plave boje.
In Memoriam: Madzone Zeka(15.09.2005-16.09.2005)
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme