Nochmals Danke
Hehe, hatte mir fast die gleiche Lösung überlegt:
Code:
For i:=Low(Status) to High(Status) do Begin
For i2 := 7 downto 0 do
If (Status[i] AND (1 SHL i2)) <> 0 then s2 := s2 + '1'
Else s2 := s2 + '0';
s2 := s2 + #32;
End;
Ich benutze noch Delphi 2005, bei XE(2) ist ein Zeichen eines Strings dann 2 Byte breit (
Unicode), deshalb meinst Du AnsiString benutzen oder ?
Noch eine Frage zum ByteBool, wenn ich mehrere Boolsche Variablen in meinem Programm deklariere, kann Delphi dann durch Compilermagic z.B. für 3 Werte trotzdem nur 1 Byte benutzen oder wird auch dann immer ein Byte Speicher verbraucht ? Heutzutage ist es wohl nicht mehr so wichtig*, auf jedes Byte zu achten aber interessieren würde es mich schon.
*Ich programmiere auch AVRs, da sieht das etwas anders aus