各位谢谢帮我把代码改成delphi好吗?
int DecodeGate(char *in, char *out)
{
if(in==NULL)
return 0;
int lcnt=strlen(in)>>1;
if(lcnt==0)
return 0;
if(in[0]==(char)0)//'\0' )
return 0;
int i=0;
int icode=0;
int _edi=0xf667;
for(i=0;i<lcnt;i++)
{
out[i]=((hex2int(ucase(in[i*2]))&0xf)<<4);
out[i]+=hex2int(ucase(in[i*2+1]))&0xf;
icode=((int)out[i])&0xff;
out[i]^=((_edi & 0xffff)>>8);
_edi=(((_edi+icode)* 0xce6d)&0xffff)+0x58bf;
}
out[lcnt]=(char)0;//'\0';
return 1;
}
int EncodeGate(char *in, char *out)
{
int lcnt=strlen(in) ;
int i=0;
int icode=0;
int tcode=0;
int hbyte=0;
int lbyte=0;
int _edi=0xf667;
for(i=0;i<lcnt;i++)
{
icode=((int)in[i])&0xff;
tcode=icode;
tcode^=((_edi&0xffff)>>8);
hbyte=(tcode&0xf0)>>4;
lbyte=(tcode&0xf);
out[i*2]=int2hex(hbyte);
out[i*2+1]=int2hex(lbyte);
_edi=(((_edi+tcode)*0xce6d)&0xffff)+0x58bf;
}
out[i * 2] = '\0';
return 1;
}