java script代码_帮忙解释一段java script代码

是这样的,这段js代码是webqq中进行加密的算法。我打算把它翻译成C,但是我不懂js;希望有人能帮我解释一下这段代码的意思;如果能直接写出C或者C++版本就太好了,不过只要能告诉这段...

是这样的,这段js代码是webqq中进行加密的算法。我打算把它翻译成C,但是我不懂js;希望有人能帮我解释一下这段代码的意思;如果能直接写出C或者C++版本就太好了,不过只要能告诉这段代码的意思就行。

其中参数i和a都是字符串

function P(i,a)

{

var r=[];

r[0]=i>>24&255;

r[1]=i>>16&255;

r[2]=i>>8&255;

r[3]=i&255;

for(var j=[],e=0; e

e=[];

for(e.push(new b(0,j.length-1)); e.length>0;) {

var c=e.pop();

if(!(c.s>=c.e||c.s<0||c.e>=j.length))if(c.s+1==c.e) {

if(j[c.s]>j[c.e]) {

var l=j[c.s];

j[c.s]=j[c.e];

j[c.e]=l

}

} else {

for(var l=c.s,J=c.e,f=j[c.s]; c.s

for(; c.s=f;)c.e--,r[0]=r[0]+3&255;

c.s

for(; c.s

c.s

}

j[c.s]=f;

e.push(new b(l,c.s-1));

e.push(new b(c.s+1,J))

}

}

j=['0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', 'F'];

e='';

for(c=0; c>4&15],e+=j[r[c]&15];

return e

}

b=function(b,i)

{

this.s=b||0;

this.e=i||0

}

展开

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Yungever

你的鼓励将是我创作的最大动力

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值