首页
社区
课程
招聘
[旧帖] [求助]PB翻译成DELPHI,我试了蛮久,可就是编译不通过,帮忙看看什么地方错了? 0.00雪花
发表于: 2008-5-8 23:50 3933

[旧帖] [求助]PB翻译成DELPHI,我试了蛮久,可就是编译不通过,帮忙看看什么地方错了? 0.00雪花

2008-5-8 23:50
3933
PB程序:
string ls_tmp
char lc_char
integer li_index
integer i
integer li_asc

ls_tmp = ""
li_index = 0

for i = 1 to len(ls_string)
        lc_char = char(mid(ls_string,i,1))           
        li_asc = 255 - asc(lc_char)
        ls_tmp = trim(ls_tmp) + char(li_asc)
next

return ls_tmp

delpi程序:自定义一个函数完成这个计算:

  function AAA(n : string): string;
  var
   li_index : integer;
   i : integer;
   li_asc :integer;
   ls_tmp : string;
   lc_char : char;
  begin
  ls_tmp := "" ;
  li_index := 0 ;
  for i := 1 to Length(edit1.Text) do
        lc_char := IntToStr(Copy(edit1.Text,i,1));
        li_asc := 255 - Ord(lc_char);
        ls_tmp := RightTrim(ls_tmp) + IntToStr(li_asc);
  end;

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 0
支持
分享
最新回复 (6)
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
function AAA(n : string): string;
  var
   li_index : integer;
   i : integer;
   li_asc :integer;
   ls_tmp : string;
   lc_char : char;
  begin
  ls_tmp := "" ;
  li_index := 0 ;
  for i := 1 to Length(form1.edit1.Text) do
  lc_char := IntToStr(Copy(form1.edit1.Text,i,1));
  li_asc := 255 - Ord(lc_char);
  ls_tmp := RightTrim(ls_tmp) + IntToStr(li_asc);
  end;
2008-5-9 08:07
0
雪    币: 300
活跃值: (39)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
仅供参考,没有测试!
function form1.AAA(n : string): string;
  var
   li_index : integer;
   i : integer;
   li_asc :integer;
   ls_tmp : string;
   lc_char : char;
  begin
  ls_tmp := "" ;
  li_index := 0 ;
  for i := 1 to Length(edit1.Text) do
  begin
  lc_char := IntToStr(Copy(edit1.Text,i,1));
  li_asc := 255 - Ord(lc_char);
  ls_tmp := RightTrim(ls_tmp) + IntToStr(li_asc);
  end;
  result:=ls_tmp;
  end;
2008-5-9 10:42
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
各位大哥,都不行,应该是数据类型定义有问题,另外,我想问一下,使用IntToStr()函数,在use中需要定义什么?我定义了一个Strutils,还需要加个什么样的?
2008-5-9 11:01
0
雪    币: 224
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
var
   li_index:integer;
   i : integer;
   li_asc:integer;
   ls_tmp:string;
   lc_char: char;
  begin
   ls_tmp:='';
  li_index := 0 ;
  for i := 1 to Length(edit1.Text) do
  begin
  li_asc := 255-ord(edit1.text[i]);
  ls_tmp := Trimright(ls_tmp) + IntToStr(li_asc);
  end;
  result:=ls_tmp;
  end;
2008-5-9 11:41
0
雪    币: 224
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
"使用IntToStr()函数,在use中需要定义什么?我定义了一个Strutils,还需要加个什么样的?"
不需要+什么了
一、数据类型转换函数,如FloatToStr,IntToStr,IntToHex,StrToInt,StrToFloat等什么都不需要加
二、字符串、数组操作函数
部分需要加个“StrUtils”,如LeftStr,RightStr,MidStr等
2008-5-9 11:46
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
function AAA(n, edit1text: string): string; //原型构造时Edit1不可见, 所以加上一参数
  var
   li_index : integer;
   i : integer;
   li_asc :integer;
   ls_tmp : string;
   lc_char : char;
  begin
  ls_tmp := "" ; //单引号
  li_index := 0 ; //循环之前应加上n,edit1text长度判断
  for i :=0 to Length(edit1Text)-1 do //edit1text[i] 是0基
begin
  lc_char := IntToStr(Copy(edit1Text,i,1)); //这里改为:   lc_char := edit1textp[i];
  li_asc := 255 - Ord(lc_char);
  ls_tmp := RightTrim(ls_tmp) + IntToStr(li_asc); //delphi 中应为Trimright
  end;
  Result:= ls_temp; //返回值要明确。
end;
2008-5-9 12:12
0
游客
登录 | 注册 方可回帖
返回
//