Dostęp do poszczególnych elementów stringa

Dostęp do poszczególnych elementów stringa
S7
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 62
0

Witam, chcialem zapytac jak sie dostac do poszczegolnych elementow stringa w delphi, docelowo bede potrzebowal zamienic string bedacy 100 cyfrowa liczba na 100 elementowa tablice jednocyforwych intow

Kopiuj
program appconsole;

{$APPTYPE CONSOLE}

var
liczba:string;

DlugoscStringa: integer;

begin
writeln('podaj napis');
readln(liczba);
DlugoscStringa:=high(liczba);

write(liczba); //tu chcialbym wysweitlin np. piaty element


readln
end.

w c++ wystarczy nazwa stringa i indeks w nawiasie np liczba[0]

CL
  • Rejestracja: dni
  • Ostatnio: dni
1

W Delphi masz podobnie tylko, że indeksacja Stringa zaczyna się od 1, czyli nie będzie elementu liczba[0].
Jak chcesz piąty element to

Kopiuj
write(liczba[5]);

Żeby zrobić z tego tablice Integerów będziesz musiał jeszcze przekonwertować wartości

Kopiuj
liczba_int := StrToInt(liczba[x]);
S7
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 62
0

dzięki za szybką pomoc

flowCRANE
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Tuchów
  • Postów: 12296
1

Tak przy okazji – długość ciągu znaków pobiera się za pomocą funkcji Length, a nie High.

S7
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 62
0

A jaka jest w praktyce różnica w użyciu high albo length?

flowCRANE
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Tuchów
  • Postów: 12296
0

High to samo co Length-1, więc różnica jest znacząca. Zresztą High przeznaczony jest głównie do pozyskiwania maksymalnej wartości danego typu lub indeksu ostatniej komórki macierzy, nie do stringów.

W przypadku ciągów znaków używa się Length – czy to w postaci wbudowanej funkcji, czy z właściwości z helperów.

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.