AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

FillChar und (packed) Records?

Ein Thema von ernschd · begonnen am 5. Mai 2009 · letzter Beitrag vom 5. Mai 2009
 
ernschd

Registriert seit: 16. Jan 2008
166 Beiträge
 
Delphi XE8 Professional
 
#1

FillChar und (packed) Records?

  Alt 5. Mai 2009, 09:41
Hallo,

ich bin grade dabei, ein altes Pascal-Programm nach Delphi zu portieren.
Darin werden mittels der Move-Routine Daten byteweise verschoben.
Leider sind in Delphi Record-Typen anscheinend standardmäßig "variabel" in der Byte-Größe, wenn das Schlüsselwort packed nicht verwendet wird, von daher erzeugt der Move allerhand lustige Ergebnisse, jedoch nicht das, was ich will.

Muss ich mit packed arbeiten bzw. mit der Compiler-Direktive {$A-}, oder gibts noch eine andere Lösung?

Des weiteren habe ich noch das Problem, dass ein FillChar auf den Pointer des Records unter Delphi nicht funktioniert, zumindest auf manche Typen darin.
Delphi-Quellcode:
New(Z_N);
{Egal ob}
FillChar (Z_N^, SizeOf (Z_N^), ' ');
{oder} 
FillChar (Z_N^, SizeOf (Z_N^), #0);
In meinem Fall ist dann Z_N^.A (ein Integer) nicht leer oder Null, obwohl es zuvor initialisiert wurde. Liegt das an packed?

Und wieso finde ich in der Hilfe von Delphi 2005 kaum was zu diesen Thema? Die Hilfe von Delphi 7 ist meiner Meinung nach wesentlich besser.

Vielen Dank.

Ernschd
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:57 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz