Delphi-PRAXiS
Seite 1 von 4  1 23     Letzte »    

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Record: Delphi only? (https://www.delphipraxis.net/71935-record-delphi-only.html)

gsh 22. Jun 2006 16:48


Record: Delphi only?
 
Hi DPler

Hab mal eine Frage ist ein record also sowas:
Delphi-Quellcode:
type
  TIrgendwas = record
    EinString : String;
    EinInteger : Integer;
  end;
Ist das was Delphi eigenes oder gibts sowas in z.b. c, c++, vb, ... auch das komplett gleich aufgebaut ist?
Also wenn ich jetzt einer c dll oder einer delphi dll einen pointer auf ein record gebe können des dann beide dlls ohne probs auslesen?

SirThornberry 22. Jun 2006 16:52

Re: Record: Delphi only?
 
Dein Record ist Delphieigen weil ein String enthalten ist. Ansonsten sind Records nichts Delphieigenes. Records spezifizieren einfach den Aufbau von hintereinander liegenden Daten. Alles was in deinem Record ist liegt also im speicher hintereinander. Wenn du Pointer im Record hast liegt das wo der pointer hinzeigt natürlich nicht mit dabei.

gsh 22. Jun 2006 17:01

Re: Record: Delphi only?
 
Zitat:

Zitat von SirThornberry
Dein Record ist Delphieigen weil ein String enthalten ist.

Aso nein des war nur ein beispiel ich werd wegen den DLLs sowieso nur PChar verwenden (oder ist des auch was delpi eigenes?)

Zitat:

Zitat von SirThornberry
Wenn du Pointer im Record hast liegt das wo der pointer hinzeigt natürlich nicht mit dabei.

ja klar aber das ist ja egal wenn der pointer im record dann auf die richte stelle zeigt :wink:

Der_Unwissende 22. Jun 2006 17:05

Re: Record: Delphi only?
 
Zitat:

Zitat von gsh
Aso nein des war nur ein beispiel ich werd wegen den DLLs sowieso nur PChar verwenden (oder ist des auch was delpi eigenes?)

PChar ist natürlich nichts Delphi-Eigenes (wird auch in der Win-API verwendet). Ist einfach nur ein Zeiger auf einen Speicher bereich, in dem ein Bytearray liegt. Dieses wird als "Nullterminierter String" interpretiert (endet also wirklich auf 0x00).

Gruß Der Unwissende

gsh 22. Jun 2006 17:08

Re: Record: Delphi only?
 
Also wenn ich des so scheib:
Delphi-Quellcode:
type
  TIrgendwas = record
    EinPChar : PChar;
    EinInteger : Integer;
  end;
dann geht des überall oder?

SirThornberry 22. Jun 2006 17:11

Re: Record: Delphi only?
 
genau der Record ist perfekt und dürfte keine Probleme bei DLL-Arbeiten bereiten.

gsh 22. Jun 2006 17:19

Re: Record: Delphi only?
 
ok danke :thumb:

werd des jetzt versuchen und wenn ich probleme hab meld ich mich wieder :zwinker:

Hawkeye219 22. Jun 2006 17:19

Re: Record: Delphi only?
 
Zitat:

Zitat von SirThornberry
genau der Record ist perfekt und dürfte keine Probleme bei DLL-Arbeiten bereiten.

...sofern alle Beteiligten mit der gleichen Ausrichtung innerhalb des Records arbeiten: [oh]$ALIGN[/oh]

Gruß Hawkeye

SirThornberry 22. Jun 2006 17:26

Re: Record: Delphi only?
 
Das align sollte schon beachtet werden. Es ging ja aber darum ob der Record Delphi eigen ist. Die Ausrichtung kann man später im c++ programm ja noch festlegen.

brechi 22. Jun 2006 17:34

Re: Record: Delphi only?
 
Dann doch lieber nen packed record :)


Alle Zeitangaben in WEZ +1. Es ist jetzt 18:12 Uhr.
Seite 1 von 4  1 23     Letzte »    

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz