Einzelnen Beitrag anzeigen

EWeiss
(Gast)

n/a Beiträge
 
#9

Re: Wer Hilft bei einer kleinen übersetzung Delphi > C ?

  Alt 2. Aug 2007, 16:14
Zitat von Der_Unwissende:
Hi,
es gibt ein paar Stellen, die mich wundern, so übergibst Du häufiger mal Zeiger auf die Strukturen, der C-Code macht das (soweit ich es sehe) aber an keiner Stelle sondern übergibt immer eine Kopie, z.B.:
Code:
BOOL BASSVISDEF(BASSVIS_StartRecord)(BASSVIS_PARAM Param, int SampleRate = 44100, int Channels = 2);
vs.

Delphi-Quellcode:
function BASSVIS_StartRecord(Param: PBASSVIS_PARAM;
    SampleRate: integer = 44100;
    Channels: integer = 2
): BOOL; stdcall; external dllfile;
Wo kommt hier das PBASSVIS_PARAM her? Das taucht analog bei den anderen Routinen auf, deren Typ mit P beginnt.
ja PBASSVIS_PARAM ist der zeiger auf den Record TBASSVIS_PARAM
in C habe ich das gleiche übersetzt lediglich das P vor der Struct entfernt

Deshalb ja auch der Thread da ich denke das hier einige übersetzungs fehler vorliegen.
Auch weiss ich nicht ob man optionale Parameter überhaupt in c so übergeben kann .. siehe 'int SampleRate = 44100'

genauso weiss ich nicht wie ich diese Zeile übersetzen soll.
BASSVIS_STATECALLBACK = void(PlayState int NewState); stdcall; stdcall habe ich belassen damit dem Übersetzer direkt auffällt das ich hier ein übersetzungsproblem habe.

gruss Emil

EDIT:
Müßte das dann so aussehen ?
Code:
BOOL BASSVISDEF(BASSVIS_StartRecord)(*BASSVIS_PARAM Param, int SampleRate = 44100, int Channels = 2);
  Mit Zitat antworten Zitat