[急]ASCII码值进行异或
我现在有一串字符,例如“abc89kdj00343k,4390jn4?”,现在要求对这组字符串进行异或,异或的条件是第一个字符与第二个字符进行异或,异或的结果与后面的一位再进行异或,以此类推,得到最后的异或结果,谢谢各位朋友。。。
------解决方案--------------------想到个思路,楼主看可行不可行:
用一个临时变量存储异或值
给这个临时变量设一个初始值,如果这个值不等于初始值,就用这个值跟后面的字符异或,并将值赋给这个变量。
------解决方案--------------------把string 转换成charArray
然后对每个字按你的要求进行异或就可以了
------解决方案--------------------C# code
string s="abc89kdj00343k,4390jn4?";
int i=0;
foreach (char c in s)
{
i ^= c;
}
MessageBox.Show(i.ToString());
------解决方案--------------------
C# code
"abc89kdj00343k,4390jn4?".ToCharArray().Aggregate<char>((relust, n) => relust ^= n);