Thema: Delphi C in Delphi Übersetzen

Einzelnen Beitrag anzeigen

Der_Unwissende

Registriert seit: 13. Dez 2003
Ort: Berlin
1.756 Beiträge
 
#7

Re: C in Delphi Übersetzen

  Alt 21. Apr 2007, 19:23
Zitat von Gehstock:
Komm net weiter kann mir jemend n klkeinen teil vormachen Bitte?
Code:
int IMEI_code(char* IMEI, char *std)


//IMEI here
//char IMEI[]="351736001251143";
//char *IMEI=argv[1];

char IMEI_PATCH[17],IMEI74[17],IMEI9C[17];
char IMEICC[33];
//char std[]="PCKKP";
char std1[]="DG1";
//char std2[]="PCKKP";
char dest[16];//std3[]="DG1";
int b=0;
int i;




//init date  ------------------------ 
for (i=0;i<16;i++)
   dest[i]=0;


for (i=0;i<37;i++)
  IMEICC[i]=0;

  strcpy(dest,std1);
//end init date --------------------
wird zu :

Delphi-Quellcode:
function IMEI_code(IMEI: PChar; std: PChar);
var IMEI_PATCH, IMEI74, IMEI9C: Array[0..16] of Char;
    IMEICC : Array[0..32] of Char;
    stdl: PChar;
    dest: Array[0..15] of Char;
    b: Integer;
    i: Integer;
begin
  stdl := 'DGL'; // hier sollte der Compiler die Umwandlung selbst schaffen
  b := 0;

  //init date ------------------------
  for i := 0 to 15 do
   dest[i] := 0;
  // schneller möglich durch
  // fillChar(dest[0], 16, 0);

  for i := 0 to 36
    IMEICC[i] := 0;
  
  // benötigt Unit SysUtils
  strCopy(@dest[0], stdl);
  //end init date --------------------
end;
Hoffe das hilft schon mal weiter. Im folgenden sollte das meiste ähnlich aussehen. Die Unterschiede zu Delph sind dann noch:
{ ist ein begin, } ist ein end
b += x entspricht b := b + x
0x65 ist Hex, also $65
switch entspricht case, ein case x: entspricht der auswahl im Delphi case, ein default im switch ist das else.
b%3 ist b mod 3

Gruß Der Unwissende
[edit]
Roter Kastern?!
[/edit]
  Mit Zitat antworten Zitat