Also zumindestens weiß ich jetzt, daß ich die untergeordneten Arrays/Records zuerst berechnen muß
und dann scheint es so, als wenn je nach Aufbau dieses untergeordnete Array anders im übergeordneten plaziert wird.
Delphi-Quellcode:
{$align 4}
1: record
a: Byte;
{3x Byte align}
b: LongWord;
end;
2: record
a: Byte;
{kein align}
b: array[0..3] of Byte;
end;
3: record
a: Byte;
{nun ratet mal}
b: trec;
end;
trec: record
case byte of
0: (c: LongWord);
1: (d: array[0..3] of Byte);
end;
Zitat:
Problem ist auch dass z.B. die Daten verschachtelt sein können
Joar, deswegen ist in der Struktur auch für jeden Bereich/Record eine eigene Align-Definition vorgesen (von 1=packed über 2, 4 bis 8)