小鸟 这是一个口令加密的自定义函数,有哪位高手能够解答每行代码的含义,要详细点.谢了
小鸟求助: 这是一个口令加密的自定义函数,有谁能够解答每行代码的含义,要详细点.谢了
Function kljm (var Djmkl: String): String;
var i: integer;
kl: string;
k: integer;
begin
kl:='';
For i:= 1 To Length(Djmkl) do
begin
k:=ord(Djmkl[i]);
If (k >= 42) And (k <= 100) Then
begin
k:= k - 9;
end
Else
begin
If (k < 42) And (k >= 32) Then
begin
k:= k + 10;
end
Else
begin
If (k > 100) And (k < 127) Then
k:= k - 11;
end;
If k = 39 Then
k:= k + 1 ;
end;
kl:= kl + char(k);
end;
Kljm:= kl;
end;
------解决方案--------------------
................
------解决方案--------------------
[code=Delphi(Pascal)][/code]
var
[/code]
------解决方案--------------------
把字符串按位取asc,如果是字符就把asc加10如果是大写字母就-11如果是39就+1.......
------解决方案--------------------
Function kljm (var Djmkl: String): String;
var i: integer;
kl: string;
k: integer;
begin
kl:='';
For i:= 1 To Length(Djmkl) do
begin
k:=ord(Djmkl[i]);
If (k >= 42) And (k <= 100) Then
begin
k:= k - 9;
end
Else
begin
If (k < 42) And (k >= 32) Then
begin
k:= k + 10;
end
Else
begin
If (k > 100) And (k < 127) Then
k:= k - 11;
end;
If k = 39 Then
k:= k + 1 ;
end;
kl:= kl + char(k);
end;
Kljm:= kl;
end;
------解决方案--------------------
................
------解决方案--------------------
[code=Delphi(Pascal)][/code]
var
[/code]
------解决方案--------------------
把字符串按位取asc,如果是字符就把asc加10如果是大写字母就-11如果是39就+1.......
------解决方案--------------------
- Delphi(Pascal) code
Function kljm (var Djmkl: String): String; var i: integer; kl: string; k: integer; begin kl:= ' '; For i:= 1 To Length(Djmkl) do //循环字符串的每个字符 begin k:=ord(Djmkl[i]); //求字符的Ascii码 //以下都是根据Ascii码范围进行移位处理 //Ascii码表参见:[url=http://www.dqdn.cn/c/fl/js601.asp][/url] If (k >= 42) And (k <= 100) Then begin k:= k - 9; end Else begin If (k < 42) And (k >= 32) Then begin k:= k + 10; end Else begin If (k > 100) And (k < 127) Then k:= k - 11; end; If k = 39 Then k:= k + 1 ; end; //移位end kl:= kl + char(k); end; Kljm:= kl; //字符串中各字符移位后所得字符串 end;