Einzelnen Beitrag anzeigen

Daniel
(Co-Admin)

Registriert seit: 30. Mai 2002
Ort: Hamburg
13.919 Beiträge
 
Delphi 10.4 Sydney
 
#12

Re: Funktionsaufruf von C nach Delphi übersetzen

  Alt 1. Aug 2007, 08:36
Offensichtlich ist's doch haariger ...

Die Strukturen sehen wie folgt aus - im Original nur etwas länger, aber nur mit PChars, LongInts und Doubles:

Delphi-Quellcode:
TTarifEingabe = packed record
  tarifname: PChar;
  tarifkennung: PChar;
  geburtsdatum: PChar;
  geschlecht: LongInt;
  versicherungsbeginn: PChar;
  beitrag: Double;
  waehrung: LongInt;
  beitragszahlungsweise: LongInt;
end;
Die ersten beiden Parameter für die Funktion nennen sich TarifEingabe und TarifAusgabe. Der dritte Parameter sollte dann der Status sein, da ich einen solchen Status erhalte, nicht jedoch in den Strukturen selbst.

Mein Aufruf schaut wie folgt aus - die Belegung der Felder habe ich hier für diesen Beitrag weggelassen, aber wie es scheint, sollte ich als nächstes versuchen, für jeden der PChars Speicher zu reservieren.

Delphi-Quellcode:
procedure MachWas;
var TEin : TTarifEingabe;
    TAus : TTarifAusgabe;
    stat : longint;
begin
  FillMemory( @TEin, SizeOf(TTarifEingabe), 0 );
  FillMemory( @TAus, SizeOf(TTarifAusgabe), 0 );

  calcFonds( TEin, TAus, stat );
end;
Daniel R. Wolf
mit Grüßen aus Hamburg
  Mit Zitat antworten Zitat