由VC代码转化为DELPHI代码的问题。(50分)

  • 主题发起人 主题发起人 adepeng
  • 开始时间 开始时间
A

adepeng

Unregistered / Unconfirmed
GUEST, unregistred user!
class CDESEncDec
{
....
private:
void BitToByte(char *Out, const bool *In, int bits);
...
};

void CDESEncDec::BitToByte(char *Out, const bool *In, int bits)
{
memset(Out, 0, bits>>3);
for(int i=0
i<bits
++i)
Out[i>>3] |= In<<(i&amp;7);
}
我这段代码转化为DELPHI代码?
 
我是这样转化的,但是不对。
type
pbool:^boolean;
procedure CDESEncDec.BitToByte(Outchar:pchar;const Inchar:pbool;bits:integer);
var
i:integer;
inchar1:array[0..63] of integer;

begin
for i:=0 to (63 shl 3) do
begin
Outchar:='0';
end;
for i:=0 to bits do
begin
Outchar[i shl 3]:=(Outchar[i shl 3]) or (Inchar1 shr (i and 7));
//这里有错误。 Operator not applicable to this operand type
end;

end;
 
代码:
Outchar^[i shl 3] := ((Outchar^[i shl 3]) or (Inchar1[i] shr (i and 7)));
 
Outchar^[i shl 3] := ((Outchar^[i shl 3]) or (Inchar1 shr (i and 7)));
编译错误是:Array type required
 
我还是没有改好,DELPHI在数据类型好麻烦啊。
 
注意,outchar必须说明为array of byte

总之,是你不会用,不是他麻烦!
 
问一下,那有比较全面的用DELPHI写的DES,MD5,GHOST,TEAN算法的吗?
有一个也行。:)
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
I
回复
0
查看
833
import
I
I
回复
0
查看
1K
import
I
后退
顶部