//二元 | 运算符是为整型和 bool 类型预定义的。对于整型,| 计算操作数的按位“或”结果。对于 bool 操作数,| 计算操作数的逻辑“或”结果;
//也就是说,当且仅当两个操作数均为 false 时,结果才为 false。
int i = 0;
Console.WriteLine(true | i++ == 10); // logical or
Console.WriteLine(false | i++ == 10); // logical or
Console.WriteLine("0x{0:x}", 0xf8 | 0x3f); // bitwise or
MessageBox.Show(null, i.ToString(), "i 的值 ");//2
int j = 0;
Console.WriteLine(true || j++ == 10); // logical or
Console.WriteLine(false || j++ == 10); // logical or
//Console.WriteLine("0x{0:x}", 0xf8 || 0x3f); // bitwise or 不能连接 两个int型数据
MessageBox.Show(null, j.ToString(), "j 的值 ");//1
// 一元 & 运算符返回操作数的地址(要求 unsafe 上下文)。
//为整型和 bool 类型预定义了二进制 & 运算符。对于整型,& 计算操作数的逻辑按位“与”。对于 bool 操作数,& 计算操作数的逻辑“与”;
//也就是说,当且仅当两个操作数均为 true 时,结果才为 true。
//& 运算符计算两个运算符,与第一个操作数的值无关
int i1 = 0;
Console.WriteLine(true & i1++ == 10); // logical or
Console.WriteLine(false & i1++ == 10); // logical or
Console.WriteLine("0x{0:x}", 0xf8 & 0x3f); // bitwise or
MessageBox.Show(null, i1.ToString(), "i 的值 ");//2
int j1 = 0;
Console.WriteLine(true && j1++ == 10); // logical or
Console.WriteLine(false && j1++ == 10); // logical or
//Console.WriteLine("0x{0:x}", 0xf8 && 0x3f); // bitwise or不能连接 两个int型数据
MessageBox.Show(null, j1.ToString(), "j 的值 ");//1
c#中的'&'和'&&','|'和'||'
最新推荐文章于 2024-08-04 20:07:17 发布