class Program
{
static void Main(string[] args)
{
char x = 'a', y = 'b';
int z;
z = (x << 8) | y;
Console.WriteLine("z左移动8位,在和y进行按位于后结果为{0}",z); }
}
最后结果为24930,怎么算来的,还有就是按位于的符号不是:& 怎么会是| 呢????
{
static void Main(string[] args)
{
char x = 'a', y = 'b';
int z;
z = (x << 8) | y;
Console.WriteLine("z左移动8位,在和y进行按位于后结果为{0}",z); }
}
最后结果为24930,怎么算来的,还有就是按位于的符号不是:& 怎么会是| 呢????
解决方案 »
- 顾军求教,程序崩溃了,找不到问题啊,各位大哥大姐来帮我看看。
- foreach中对哈希表或arraylist操作,是否安全
- 100分 如何在接口中定义父类参数 在实现接口类中实现子类参数?
- pdf文件打印(C#)
- 在后台创建一个DropDownList问题,请大哥们帮帮我
- 怎么样把几张表,汇总到一张表中,求一SQL语句,这次的确是有点急了,啊,主呀,帮帮我吧~`
- HttpWebRequest 和 浏览器打开有什么区别?高手过来
- C# 线程操作串口的问题
- 在本地运行良好的程序安装到远程上出了问题
- Arcengine 有什么方法可以筛选要素并输出为shp文件吗?
- combobox
- provider 命名管道提供程序 error 40,无法打开sql连接
'b'就是98x='a'二进制为:0000000001100001
y='b'二进制为:0000000001100010
x左移8位后二进制为:0110000100000000
或y后为:0110000101100010Text = Convert.ToInt32("0110000101100010", 2).ToString(); //24930|是或,也可以看成加法,“和”...
你说的&是“与”...
这里特别必须注意,因为char占2个字节,若x是byte类型的话,byte仅占一个字节,即八位. 01100001 左移8位后得00000000.(范围以外的都被截掉了) (4)或运算: 0110000100000000
0000000001100010 得 0110000101100010 运成十进制即得: 24930