Einzelnen Beitrag anzeigen

Popov
(Gast)

n/a Beiträge
 
#2

AW: Zahl in Variablenbezeichung einbauen

  Alt 4. Apr 2014, 18:54
Also dass es Arrays gibt, hast du anscheinend schon mitbekommen:
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
  Zahl: array[1..10] of Integer;
  Ergebnis: array[1..10] of String;
  i: Integer;
begin
  for i := 1 to 10 do
  begin
    Zahl[i] := i;
    Ergebnis[i] := 'Ergebnis' + IntToStr(i);
  end;

  for i := 1 to 10 do
    ShowMessage(IntToStr(Zahl[i]) + Ergebnis[i]);
end;
Was du evtl. missverstehst ist das hier:
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
  Ergebnis: String;
begin
  Ergebnis := 'Ergebnis';
  ShowMessage(Ergebnis[1]);
end;
Sieht ähnlich aus, liefert aber unterschiedliche Ergebnisse. Das eine Ergebnis[i] ist ein Array, das andere Ergebnis[1] im Grunde ein Char. Mit Ergebnis[i] sagst du dem Array, das er die den i-ten String ausgeben soll, mit Ergebnis[1] sagst Delphi, dass du das erste Zeichen des Strings haben willst. Ist etwas verwirrend, weil gleich.

Was macht man aber wenn man das erste Zeichen eines Array-Strings haben will? Einfach das
Delphi-Quellcode:
  for i := 1 to 10 do
    ShowMessage(IntToStr(Zahl[i]) + Ergebnis[i][1]);
Wenn es ein Array ist, dann ist die erste [x] Angabe der Array und der zweite der Char. Ist es ein String, ist die erste [x] Angabe der Char.
  Mit Zitat antworten Zitat