Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi CPP -> Delphi (https://www.delphipraxis.net/158887-cpp-delphi.html)

Gehstock 7. Mär 2011 08:29

AW: CPP -> Delphi
 
Das ist auch etwas verwirrend

Code:
DWORD fix(unsigned char *buffer,int length)
...
for (a = ~a & 0x3FFFFFFF; b >= 8; b -= 8, buffer++)
{
if (b==0x5*8)
b=0x5*8;
a = table[((a >> (30 - 8)) ^ *buffer) & 0xff]^ (a << 8);
}
welches ich mit
Delphi-Quellcode:
Function Fix (buffer: PAnsichar; len: Integer): DWord;
var
  c, a, d, e: DWord;
  b, i: Integer;
  buffer2: Array [0 .. 4] of Byte;
...
a := (not a) and $3FFFFFFF;
  while b >= 8 do
  begin
    if b = ($05 * 8) then b := $05 * 8;//macht für mich keinen sinn?
      a := Table[(a SHR (30 - 8) XOR strtoint(buffer)) and $FF] XOR (a SHL 8);
      Dec(b, 8);
      Inc(buffer);
  end;
übersetzen würde

SirThornberry 7. Mär 2011 12:11

AW: CPP -> Delphi
 
Was genau weißt du denn nicht? Bevor wir dir jeden Quelltext übersetzen ist es vielleicht hilfreicher dir die Dinge zu erklären die du nicht verstehst.

himitsu 7. Mär 2011 12:21

AW: CPP -> Delphi
 
Wie kommst du auf strtoint?
Hier soll der Zeichencode des ersten Bytes verwendet werden.
Ein einer Variable vorangestelltes
Delphi-Quellcode:
*
entspricht (glaub ich) dem derefferenzierenden nachfolgenden
Delphi-Quellcode:
^
.

Delphi-Quellcode:
Ord(buffer^)
, wenn es ein PAnsiChar ist ... bei einem
Delphi-Quellcode:
array of Byte
aka
Delphi-Quellcode:
TBytes
wäre es ein buffer^ oder
Delphi-Quellcode:
buffer[0]
.

Und ja, das
Delphi-Quellcode:
if (b==0x5*8) b=0x5*8;
scheint totaler Schwachsinn zu sein.

Assarbad 7. Mär 2011 14:19

AW: CPP -> Delphi
 
Zitat:

Zitat von SirThornberry (Beitrag 1086483)
Was genau weißt du denn nicht? Bevor wir dir jeden Quelltext übersetzen ist es vielleicht hilfreicher dir die Dinge zu erklären die du nicht verstehst.

+1 von mir :thumb:

Gehstock 7. Mär 2011 14:29

AW: CPP -> Delphi
 
wurde doch schon beantwortet

Danke nochmal euch allen


Alle Zeitangaben in WEZ +1. Es ist jetzt 08:45 Uhr.
Seite 2 von 2     12   

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