将javascript函数转换为C#(转换问题)

时间:2011-04-09 21:51:40

标签: c# javascript

因为我的javascript很差,我希望有人将这个小函数转换成C#代码给我..

var cn = 0;
function C(i,s)
{ 
   return s.charCodeAt(i) ^ (cn|1) ^ ((cn++ & 1)?i:0) ^ 0x55 
}

我真的很感谢你的帮助。提前谢谢:)

2 个答案:

答案 0 :(得分:3)

private static int cn = 0;
public static int C(int i, string s)
{
    return s[i] ^ (cn | 1) ^ (((cn++ & 1) == 1) ? i : 0) ^ 0x55;
}

答案 1 :(得分:1)

private static int cn = 0;
public static int C(int i, string s)
{ 
   return ((byte)s[i]) ^ (cn|1) ^ ((cn++ & 1) != 0 ? i:0) ^ 0x55;
}

这是假设函数作为静态函数进入类的假设,所以你可以这样调用它:

MessageBox.Show(MyType.C(0, "test")); //Output: 32

如果删除static关键字,则可以将其称为实例方法:

MyType something = new MyType();
MessageBox.Show(something.C(0, "test"); //Output: 32