Einzelnen Beitrag anzeigen

Benutzerbild von Martin K
Martin K

Registriert seit: 20. Okt 2005
919 Beiträge
 
Turbo Delphi für Win32
 
#5

Re: Array durchlaufen und Werte rauslesen

  Alt 13. Jan 2007, 19:29
Sollte so gehen:
Delphi-Quellcode:
var
  i: Integer;
  Bool: array [1..8] of Integer;
begin
  for i := 0 to 7 do
    Bool[i + 1] := 1 shl i;
end;
shl verschiebt die Bits nach links, 1 shl i verschiebt also die 1 um i Bits nach links.

[Nachtrag]
Natürlich kannst du es auch direkt so machen, und dir das array komplett schenken (meinte marabu sicherlich auch so), lass dann aber die FOR-Schleife mit 0 beginnen, da 1 shl 0 logischerweise wieder 1 ergibt, 1 shl 1 wäre aber schon 2 (Binär: 10).
Delphi-Quellcode:
for i := 0 to 7 do
begin
  //
  Wert := Wert + (Integer(dummy_CheckBox) * (1 shl i)); //bin mir nicht sicher, ob man die Klammern beim shl braucht, warscheinlich kannst du sie auch wegalssen
end;
Mit den Menschen ist es wie mit Computern -
es gibt Nullen und Einsen.
  Mit Zitat antworten Zitat