Próbuję w pętli for przeanalizować każdy znak z łańcucha znaków typu String.
Spotkałem się już niejednokrotnie z borlandową funkcją "Pos", która jako argument pobiera znak (char) a zwraca położenie tegoż znaku.
Czy jest jakiś sposób (funkcja?), dzięki której można wykonać odwrotną operację na łańcuchu typu String?
Oto przykład pętli for i pseudo-kodu:
KOD cpp: UKRYJ
String tekst_string="jakis_lancuch";
for (int i=0; i<tekst_string.Length(); i++)
{
// ShowMessage("Literka nr: "+IntToStr(i)+" , Literka = "+tekst_string[i]); // tak jak w przypadku char[] nie działa <img style="vertical-align: middle;" src="./images/smilies/icon_e_sad.gif" alt=":(" title="Smutny" />
ShowMessage("Literka nr: "+IntToStr(i)+" , Literka = "+tekst_string.APos(i)); // APos = funkcja odwrotna do funkcji Pos
// funkcja Pos:
// int Pos(AnsiString) - zwraca int jako index danego znaku w łańcuchu, pobiera AnsiString (znak)
//
// funkcja APos: -- jest coś w tym stylu w ogóle?
// char APos(int) -- zwraca char (tzn. znak), pobiera int (index)
}
for (int i=0; i<tekst_string.Length(); i++)
{
// ShowMessage("Literka nr: "+IntToStr(i)+" , Literka = "+tekst_string[i]); // tak jak w przypadku char[] nie działa <img style="vertical-align: middle;" src="./images/smilies/icon_e_sad.gif" alt=":(" title="Smutny" />
ShowMessage("Literka nr: "+IntToStr(i)+" , Literka = "+tekst_string.APos(i)); // APos = funkcja odwrotna do funkcji Pos
// funkcja Pos:
// int Pos(AnsiString) - zwraca int jako index danego znaku w łańcuchu, pobiera AnsiString (znak)
//
// funkcja APos: -- jest coś w tym stylu w ogóle?
// char APos(int) -- zwraca char (tzn. znak), pobiera int (index)
}
Wiem, jak ten algorytm można było wykonać w standardowym C, bo wystarczyło odwołać się do index'u poprzez nawiasy kwadratowe "[" i "]", ale nie mogę znaleźć sposobu jak to zrobić w Borland C++ Builder..
Pomóżcie!!! Proszę!!!