Einzelnen Beitrag anzeigen

Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.116 Beiträge
 
Delphi 11 Alexandria
 
#1

Bug bei {$ALIGN} in Delphi 7?

  Alt 19. Jun 2005, 16:39
Moin Zusammen,

durch eine Thread von Pseudemys Nelsoni (Diese C-Struktur in Delphi? kam ich darauf mal die Direktive {$ALIGN} zu testen.

Standardmässig wird in D7 ja ein Alignment von 8 eingestellt, so dass ein Record wie dieser

Delphi-Quellcode:
type
  TEinRecord = record
    Ptr1 : Pointer;
    Feld1 : cardinal;
    Feld2 : cardinal;
  end;
bei SizeOf eigentlich 24 zurückliefern müsste.

Das passiert aber nicht. Die Grösse ist 12.

Als Direktive habe ich es auch einmal direkt vor die Recorddeklaration geschrieben, um sicherzustellen, dass auch tatsächlich 8 eingestellt ist, allerdings ohne Erfolg. Es blieb bei Size = 12.

Mach' ich da jetzt einen Denkfehler?
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat