Wpis z mikrobloga

Dlaczego ten string wynik jest pusty w mainie, mimo ze w tej funkcji wszystko dziala? #cpp #naukaprogramowania

string sprawdz_pali(string pali){
int k =1,f=0,coutn=0;
string wynik;

for(int i =0;i<pali.size() -f ;i++){

if(pali[i] == pali[pali.size()-i-k]){
cout<<"ok"<<endl;
coutn++;
}else{
cout<<"nie"<<endl;
f++;
k++;
coutn =0;
i=0;
}
if(coutn == pali.size() - f -1){

for(int w=0;w<pali.size() -f;w++){
wynik[w] = pali[w];
//cout<<wynik[w];

}
return wynik;
}
}
}
  • 14
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@WernerHeisenberg: więc pewnie masz tylko jeden przebieg pętli

for(int w=0;w<pali.size() -f;w++){
wynik[w] = pali[w];
//cout<<wynik[w];
}

Co powinna zawierać zmienna wynik na końcu funkcji? Nazwa sprawdz_pali sugeruje, że funkcja zwraca powinna zwracać bool a nie std::string, więc dla mnie nie jest jasne co powinno być w wynik.
  • Odpowiedz