using System;
class MainClass
{
static void Main()
{
char ch1 = 'h';
char ch2 = 'i';
char ch3 = '!';
int key = 88; Console.WriteLine("原信息 ; " + ch1 + ch2 + ch3); // 编码信息
ch1 = (char)(ch1 ^ key);
ch2 = (char)(ch2 ^ key);
ch3 = (char)(ch3 ^ key);
Console.WriteLine("编码信息 ; " + ch1 + ch2 + ch3); // 解码信息
ch1 = (char)(ch1 ^ key);
ch2 = (char)(ch2 ^ key);
ch3 = (char)(ch3 ^ key);
Console.WriteLine("编码信息 ; " + ch1 + ch2 + ch3);
}
}
结果:原信息 ;hi!
编码信息 ;01y
编码信息 ;hi!但是书上的结果是 :原信息 ;hi!
编码信息 ;ly
编码信息 ;hi!还有 ch1 = (char)(ch1 ^ key); 这句怎么解释?
解决方案 »
- 请教Entity里的一个问题
- 带参数的事务,如何传参数进去?
- 介绍本介绍C# 控件开发的书
- 关于dataAdapter.Update(dt)不成功的问题
- SqlCommand cmd为什么不能执行这种SQL语句???
- 用DataGridView绑定数据集数据后,如何获取当前选中的数据?
- 在winform里内嵌了webbrowser控件,用webbrowser打开excel文件遇到几个问题(在线等)
- c#操作SQLite,如何在不同数据库文件之间复制表?
- 谁有whidbey下载阿?给个地址!
- 类在不同解决方案的调试问题
- 基于C#的B/S考试系统中定时提交(头都想大了。。)
- 从键盘输入一个数组(在线等!)
看看书上的key是不是88?要不是88,就说明书上的错了贝
把ch1和88进行异或操作
ch1 = (char)(ch1 ^ key);
ch2 = (char)(ch2 ^ key);
ch3 = (char)(ch3 ^ key);
Console.WriteLine("编码信息 ; " + ch1 + ch2 + ch3); // 解码信息
ch1 = (char)(ch1 ^ key);
ch2 = (char)(ch2 ^ key);
ch3 = (char)(ch3 ^ key);
Console.WriteLine("解码信息 ; " + ch1 + ch2 + ch3);请您把这些行都设上断点 再看您的vs工具条 点击调试-〉窗口-〉局部变量 执行后一目了然 :)