Bonjour,
Je suis en train de convertir un programme C en Delphi.
Mes connaissances en C sont limitées, notamment concernant l'utilisation de pointeurs en C et des conventions d'écriture associées en C.
Je bloque sur la conversion de la fonction suivante :
Le type MAGtype_LegendreFunction est défini par :
Code c : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41 MAGtype_LegendreFunction *MAG_AllocateLegendreFunctionMemory(int NumTerms) /* Allocate memory for Associated Legendre Function data types. Should be called before computing Associated Legendre Functions. INPUT: NumTerms : int : Total number of spherical harmonic coefficients in the model OUTPUT: Pointer to data structure MAGtype_LegendreFunction with the following elements double *Pcup; ( pointer to store Legendre Function ) double *dPcup; ( pointer to store Derivative of Legendre function ) FALSE: Failed to allocate memory CALLS : none */ { MAGtype_LegendreFunction *LegendreFunction; LegendreFunction = (MAGtype_LegendreFunction *) calloc(1, sizeof (MAGtype_LegendreFunction)); if(!LegendreFunction) { MAG_Error(1); return NULL; } LegendreFunction->Pcup = (double *) malloc((NumTerms + 1) * sizeof ( double)); if(LegendreFunction->Pcup == 0) { MAG_Error(1); return NULL; } LegendreFunction->dPcup = (double *) malloc((NumTerms + 1) * sizeof ( double)); if(LegendreFunction->dPcup == 0) { MAG_Error(1); return NULL; } return LegendreFunction; } /*MAGtype_LegendreFunction*/
Code c : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 typedef struct { double *Pcup; /* Legendre Function */ double *dPcup; /* Derivative of Legendre fcn */ } MAGtype_LegendreFunction;
Pouvez-vous m'aider à convertir en Delphi le type MAGtype_LegendreFunction et la fonction MAG_AllocateLegendreFunctionMemory ?
Merci pour votre aide.
Thierry RICHET
Partager