有谁知道在delphi中的异或运算? 点击:2472 | 回复:5



杰克

    
  • 精华:0帖
  • 求助:0帖
  • 帖子:10帖 | 52回
  • 年度积分:0
  • 历史总积分:132
  • 注册:2003年7月26日
发表于:2003-12-15 17:19:00
楼主
Q = 0 L = Len(A$) For I = 1 To L Q = Asc(Mid(A$, I, 1)) Xor Q Next I 上面这上表达示是在vb中对A(字符串)中的每一个值进行异或运算。 我想问的是:在delphi中是怎么写上面的表达示的????谢谢!!!!



GaryLin

  • 精华:0帖
  • 求助:0帖
  • 帖子:4帖 | 1186回
  • 年度积分:0
  • 历史总积分:1263
  • 注册:2003年4月15日
发表于:2003-12-15 11:50:00
1楼
xor Online Help -> Index -> Bitwise Operators

杰克

  • 精华:0帖
  • 求助:0帖
  • 帖子:10帖 | 52回
  • 年度积分:0
  • 历史总积分:132
  • 注册:2003年7月26日
发表于:2003-12-15 14:35:00
2楼
我是这样写的: for i:=1 to L do Q:=ord(copy(A,i,1) Xor Q; 它会报错,说是说类型不相反什么的。 但是我觉是就是这样写的,我就不知道应该怎么样写了??? 你帮我调试一下好不?? 还有就是我在timer时钟控件里我想对温控仪的设置值进行慢慢的增加。把command中的代码放到timer事件里,就是不行,我用手点的话每次都能设置成功。想自动化就是不行。这是为什么???

GaryLin

  • 精华:0帖
  • 求助:0帖
  • 帖子:4帖 | 1186回
  • 年度积分:0
  • 历史总积分:1263
  • 注册:2003年4月15日
发表于:2003-12-15 15:45:00
3楼
Copy() returns a string, not a char; you cannot call ord() in a string. Try the following one... procedure TForm1.Button1Click(Sender: TObject); var st : array[0..100] of char; i, len : integer; crc : integer; begin strcopy(st, `test`); len := strlen( st ); crc := 0; for i:= 0 to len -1 do crc := crc xor ord(st[i]); Button1.Caption := IntToHex(ord(crc), 2); end;

杰克

  • 精华:0帖
  • 求助:0帖
  • 帖子:10帖 | 52回
  • 年度积分:0
  • 历史总积分:132
  • 注册:2003年7月26日
发表于:2003-12-15 17:19:00
4楼
高手就是高手,说真的,我真的很佩服你!也很感激你。因为上次和这次,你帮了我很大的帮。真诚的谢谢你!祝你节日快乐!! 第一问题你说的很对,copy返回的是string我今天下午才在书上看到的,我对delphi不是很了解,所以好多的函数,都不了解。我只是对编程的思想比较比炉膛较好了一点而以。 第二个问题,我刚才自已搞定了。谢谢!! 我以后有问题的话一定会来问你的。希望你再帮,谢谢!! 最后再送你一句话:你真的好强!!!

杰克

  • 精华:0帖
  • 求助:0帖
  • 帖子:10帖 | 52回
  • 年度积分:0
  • 历史总积分:132
  • 注册:2003年7月26日
发表于:2003-12-15 17:19:00
5楼
高手就是高手,说真的,我真的很佩服你!也很感激你。因为上次和这次,你帮了我很大的帮。真诚的谢谢你!祝你节日快乐!! 第一问题你说的很对,copy返回的是string我今天下午才在书上看到的,我对delphi不是很了解,所以好多的函数,都不了解。我只是对编程的思想比较比炉膛较好了一点而以。 第二个问题,我刚才自已搞定了。谢谢!! 我以后有问题的话一定会来问你的。希望你再帮,谢谢!! 最后再送你一句话:你真的好强!!!

热门招聘
相关主题

官方公众号

智造工程师