F
fenghai4690
Unregistered / Unconfirmed
GUEST, unregistred user!
想要实现的功能:传递一个字符串s给函数crypt(),在crypt中将s转化成array of byte,然后进行异或运算得到加密的array of byte。我要将这个值返回给主函数。
我的实现方法:
type
x=array of byte
pbyte=^x;
...
procedure crypt(str:string;Aabyte);
...
var
pass: pbyte
begin
...
getmem(pass,a)
//a是一个整形变量,已在前面赋值
crypt(s,pass)
//s是一个待加密的字符串
...
end;
procedure crypt(str:string;Aatbyte);
begin
...
getmem(Aa,b);//b是一个整形变量,值等于a;
for i:=0 to b-1 do
Aa^:=passwd
//passwd是一个array of byte,*********程序运行到这里就报错!
...
end;
我想让Aa和pass指向同一块内存,在crypt中给Aa赋值后,在主程序中就可以用pass取出相应的值了。但是执行的时候报错!希望能得到各位的指教!谢谢
我的实现方法:
type
x=array of byte
pbyte=^x;
...
procedure crypt(str:string;Aabyte);
...
var
pass: pbyte
begin
...
getmem(pass,a)
//a是一个整形变量,已在前面赋值
crypt(s,pass)
//s是一个待加密的字符串
...
end;
procedure crypt(str:string;Aatbyte);
begin
...
getmem(Aa,b);//b是一个整形变量,值等于a;
for i:=0 to b-1 do
Aa^:=passwd
//passwd是一个array of byte,*********程序运行到这里就报错!
...
end;
我想让Aa和pass指向同一块内存,在crypt中给Aa赋值后,在主程序中就可以用pass取出相应的值了。但是执行的时候报错!希望能得到各位的指教!谢谢