tablice w c++ builder

0

Witam!!!

Mam nastepujace pytanie w edicie wpisuje jakas tam sekwencje liczb a nastepnie pod buttona chce podpiac instrukcje ktora by ta sekwencje liczb wpisywala do tablicyjak to zrobic?

for(index=1; index<20; index++)
{
numer[index]=Edit_Numertel->Text[index];
}

zmienna numer jest typu String, jedna program wysypuje sie blad dotyczy dostepu do pamieci...

0

Jezeli wywala blad dostepu do pamieci, to najprawdopodobniej probojesz sie odwolac do pozycji z tablicy wyzszej niz zadeklarowales.
jesli mamy np. tablice n[20] to przy odwolywaniu sie do elementu o indeksie >=20 moze wlasnie spowodowac wyswietlenie takiego bledu (elementy tablicy liczone sa od 0!)

0

Tak tez bylo ze powiedzmy wpisalem 10 znakow a ptele for ustawlem na 20 pozniej zkorzystalem z funkcja ktora mierzy dlugosc stringu policzylem (dodadkowa zmienna) dlugosc stringu i ta zmenna wstawilem do petli for jednak blad caly czas wystepuje a instrukcje typu

numer[1]=Edit_Numertel->Text[1];
numer[2]=Edit_Numertel->Text[2];
numer[3]=Edit_Numertel->Text[3];
numer[4]=Edit_Numertel->Text[4];

dzialaja poprawnie...

0

gdy dalem w komentarz linie ThrowIfOutOfRange(idx); w dstring.h program dzial prawidlowo wiem moze ktos dlaczego tak sie dzieje?

0

Co prawda program dziala ale dziwnie jesli petle for ustawie od 1:
for(i=1; i<20; i++)
{
tab[i]=Edit1->Text[i];
}

to na poczatku stringu wstawiany jest jakis znaczek Edit1 (forum tego nie chce prawidlowo wyswietlic cos w tym stylu jak ten znak | ale troszeczke mniejszy)

jesli petla for zaczyna sie od 0 to do stringa nie jest nic wstawiane o co chodzi ??????????????????

0

Co prawda program dziala ale dziwnie jesli petle for ustawie od 1:
for(i=1; i<20; i++)
{
tab[i]=Edit1->Text[i];
}

to na poczatku stringu wstawiany jest jakis znaczek Edit1 (forum tego nie chce prawidlowo wyswietlic cos w tym stylu jak ten znak | ale troszeczke mniejszy)

jesli petla for zaczyna sie od 0 to do stringa nie jest nic wstawiane o co chodzi ??????????????????

Edit1->Text jest typu AnsiString
jesli np n jest ciagiem AnsiString to n[1] odwoluje sie do pierwszego znaku tego ciagu! (nie n[0])

0

no ok ale co z tym znaczkiem na poczatku zrobic zeby go nie bylo ?

1 użytkowników online, w tym zalogowanych: 0, gości: 1