Einzelnen Beitrag anzeigen

DerBadejunge

Registriert seit: 7. Apr 2005
8 Beiträge
 
#5

Re: Rückgabe eines Null terminierten Str einer C++ Dll an De

  Alt 8. Mai 2005, 20:19
So Lade ich meine Funktion aus der Dll...

function parseonly(P: PChar): PChar; stdcall; external 'libprimzahl.dll'index 4; Und so auch die Dll.

Delphi-Quellcode:
__stdcall const char* parseonly(const char* k){   

i = 0;
mpz_class n = ausdruck(k);

const char* ergebnis = mpz_get_str(0, 0, n.get_mpz_t());

return ergebnis;
}
"ausdruck(k)" liefert dabei einen Integer der gmp Bibliothek mit (fast) undendlicher größe...
Dieser wird mit mpz_get_str in ergebnis exportiert und returbned...

Da ich bisher auch andere Funktionen in dieser Bibliothek habe, die int und Bool zurück geben kann ich getrost sagen, dass es an der rückgabe des const char* liegt... (PChar)

Kann es sein, dass die Semantik von Delphi nicht zugriff auf c++ variablen hat?

P.S. auch die Static deklaration hat nicht gefunzt...
P.S. genauso, wie eine Delphireferenz zusammen mit c++ bei mir nicht im geringsten eine Referenz war...

gruß und Danke
Wilhelm
  Mit Zitat antworten Zitat