Delphi-PRAXiS
Seite 3 von 4     123 4      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Von C nach Delphi: Benötige Hilfe (https://www.delphipraxis.net/143840-von-c-nach-delphi-benoetige-hilfe.html)

Jazzman_Marburg 24. Nov 2009 21:47

Re: Von C nach Delphi: Benötige Hilfe
 
Zitat:

GetMem(t, SizeOf(TTreeNode));
Hhmm, das wiederum führt zu:

E2010 Inkompatible Typen: 'PTreeNode' und 'procedure, untyped pointer or untyped parameter'

Da ist irgendwie der Wurm drin.

Gruß
Jazzman

himitsu 24. Nov 2009 21:54

Re: Von C nach Delphi: Benötige Hilfe
 
GetMem ist eine Prozedur
Delphi-Quellcode:
FUNCTION Rootptr: PTreeNode;
VAR t : PTreeNode;
BEGIN
  GetMem(t, SizeOf(^t));
  t.key  := -1;
  t.op   := '?';
  t.left := NIL;
  t.right := NIL;
  Result := t;
END;
in Delphi beendet Result nicht die Prozedur, also braucht man keine TempVariable
Delphi-Quellcode:
FUNCTION Rootptr: PTreeNode;
BEGIN
  New(Result);
  Result.key  := -1;
  Result.op   := '?';
  Result.left := NIL;
  Result.right := NIL;
END;

Jazzman_Marburg 25. Nov 2009 19:29

Re: Von C nach Delphi: Benötige Hilfe
 
Hallo!

Die Übersetzung macht (dank eurer großen Hilfe) Fortschritte, aber scheitere ich schon wieder.
Kann mir das jemand nach delphianisch übersetzen?

(Statt in einen File, soll alles in eine Liste : TStringList geschrieben werden)
Code:
  fprintf ("Number of modules = %d\n", no_modules);
  fprintf (mod_file,"%e %e %d\n", in_module[i].height, in_module[i].width, in_module[i].fixed);
Für die erste Zeile habe ich es mit:
Liste.Add(FORMAT('Number of modules = %d', IntToStr(no_modules)));
versucht, aber das bringt Fehler: E2250 Es gibt keine überladene Version von 'Format', die man mit diesen Argumenten aufrufen kann

Deshalb habe ich die zweite Zeile erst garnicht erst versucht.

Eine Idee?

Danke & Gruß
Jazzman

DeddyH 25. Nov 2009 19:37

Re: Von C nach Delphi: Benötige Hilfe
 
Delphi-Quellcode:
Liste.Add(FORMAT('Number of modules = %d', [IntToStr(no_modules)])); //die eckigen Klammern nicht vergessen

Jazzman_Marburg 25. Nov 2009 20:09

Re: Von C nach Delphi: Benötige Hilfe
 
Merci.

Jazzman

Jazzman_Marburg 27. Nov 2009 10:40

Re: Von C nach Delphi: Benötige Hilfe
 
Hallo!

Ein weiterer Stolperstein im Projekt C ==> Delphi:

Code:
  float s;  /* real random number */

  s = rand()/(RAND_MAX+1.0);
"RAND_MAX" kennt Delphi ja nicht.
Was wäre dann wohl eine korrekte Übersetzung?

Vielen Dank im voraus :stupid:
Jazzman

DeddyH 27. Nov 2009 10:45

Re: Von C nach Delphi: Benötige Hilfe
 
Dann definier doch einfach eine Konstante mit dem entsprechenden Wert.

Jazzman_Marburg 27. Nov 2009 10:52

Re: Von C nach Delphi: Benötige Hilfe
 
Hallo.

Ähm, was ist denn der "entsprechende" Wert für RAND_MAX?

Oder missverstehe ich den Hinweis?

Gruß
Jazzman

DeddyH 27. Nov 2009 10:56

Re: Von C nach Delphi: Benötige Hilfe
 
Delphi-Quellcode:
const RAND_MAX = $7FFF;
Zumindest bei Microsoft, beim GNU-Compiler wäre das MAXINT, wie ich in einer schnellen Recherche ermitteln konnte.

Jazzman_Marburg 27. Nov 2009 11:19

Re: Von C nach Delphi: Benötige Hilfe
 
Juups - Dankeschön!

Gruß
Jazzman


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:20 Uhr.
Seite 3 von 4     123 4      

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 by Thomas Breitkreuz