谁帮我把这段代码给改成DELPHI的吧,我改了后返回的有问题,。谢谢(CRC校验)(30分)

C

cjsam

Unregistered / Unconfirmed
GUEST, unregistred user!
WORD GetCRC(unsigned char* p, int len)
{
DWORD crc = 0;
for (int i=0; i<len; i++)
{
crc ^= p<<8;
for (int j=0; j<8; j++)
{
crc <<= 1;
if (crc &amp; 0x10000)
crc ^= 0x11021;
}
}
return crc &amp; 0xffff;
}
 
function GetCRC(p:pchar;len:integer):word;stdcall;
var
crc:dword;
i,j:integer;
begin
crc:= 0;
for i:=0 to len-1 do
begin
crc:=crc xor (integer(p) shl 8);
for j:=0 to 7 do
begin
crc:=crc shl 1;
if (crc and $10000)<>0 then
crc:=(crc xor $11021);
end;
end;
Result:=(crc and $ffff);
end;
 
顶部