C#中的&和|还有<<、>>是什么

如题所述

C#中的&和|是逻辑运算符,<<、>>是双目运算符。

&表示并且,需要所有条件都满足结果才是真;|表示或者,只要一个条件满足,结果就为真;<<是左移操作符,相当于除以2;>>是右移操作符,相当于乘以2。

扩展资料:

1、&(且)是逻辑语言,逻辑上表示两者属于缺一不可的关系,还可以表示一个人和另外一个人之意,与and同义。如A&B,表示A与B,A和B,A×B。

2、| (或)的规则:

true||true=true

true||false=true

false||true=true

false||false=false

例如:

if (x > 5.0 || x < -5 /*x 大于5或x小于-5*/

{ y = 25.0 ;}

else {y = 5.0 * x;};

其实1和11可以互换,原因是C/C++会自动将int类型与bool类型互相转换,true转为1,false转为0。

3、<<(左移运算符)

该运算符为双目运算符,作用是把一个整型数所有位向左移动指定位数,移动到左边界外的多余二进制位丢弃,从右边界移入0。左移运算两个操作数为整数类型。第一个操作数是进行移位操作的数,第二个操作数指定第一个操作数移动位数。如果第二个操作数等于0则不发生任何移位。

4、>>(右移运算符)

在许多计算机编程语言(例如:C语言、C++语言、Java语言、JavaScript语言、Pascal语言等)中,“>>”代表右移运算符,就相当于“shr”。该运算符为双目运算符,结合方向为从左到右,作用是把一个整型数的所有位向右移动指定的位数,移动到右边界之外的多余二进制位会被丢弃,并从左边界移入一个二进制位,若原数的最高位为1,则移入的二进制位为1,否则为0。

右移运算的两个操作数应为整数类型。第一个操作数是要进行移位操作的数,第二个操作数指定第一个操作数移动的位数。如果第二个操作数等于0则不发生任何移位。

参考资料:

百度百科--&

百度百科--|

百度百科--<<

百度百科-->>

温馨提示:内容为网友见解,仅供参考
无其他回答

C#中的&和|还有<<、>>是什么
C#中的&和|是逻辑运算符,<<、>>是双目运算符。&表示并且,需要所有条件都满足结果才是真;|表示或者,只要一个条件满足,结果就为真;<<是左移操作符,相当于除以2;>>是右移操作符,相当于乘以2。

C#中的逻辑运算符有哪些呢?
C# 中的逻辑运算符有以下几种:逻辑与运算符(&&):只有当两个操作数都为 true 时,整个表达式才为 true。逻辑或运算符(||):当两个操作数中至少有一个为 true 时,整个表达式为 true。逻辑非运算符(!):对一个操作数进行取反操作,如果原操作数为 true,则结果为 false;反之,如果原操作...

C#代码问题中的& ~是什么意思?
&是与运算 ,~是取反运算,上面这段代码的意思就是如果原来的字体是加粗的,则新字体不加粗(但其他样式不变),否则加粗。

C语言中的符号 & 和 | 是什么意思?
&: 在C语言中有两种意思,一种是取地址符,是单目运算符;另一种是位运算符,表示“按位与”,是双目运算符。|: 是位运算符,表示“按位或”。资料扩展1、符号 & 和 | 这两个运算符都是二进制的按位操作符。&: 二进制“与”(都为1时,结果是1,否则是0。),比如:1010 & 1011 = 1010...

c#编程中各符号的意思。
C#非常严格的类型安全规则防止出现常见的C#错误,也就是在逻辑语句中使用赋值运算符代替比较运算符。在C#中,下述语句会产生一个编译错误:if (x = 3)习惯使用宏字符&来连接字符串的VB程序员必须改变这个习惯。在C#中,使用加号+连接字符串,而&表示两个不同整数值的按位AND运算。| 则在两个整数...

C#中的“或,与,非”用什么表示?
或 || 与 && 非 !补充问题回答:如果输入end或者END就退出,那就说明不退出的情况下输入的既不能是end,也不能使END 所以在你的示例里面:while (a != "END" || a != "end")表达的意思是不清楚的 应该是 while (a != "END" && a != "end")...

c语言&和||是什么意思
“||”表示 或,意为二者或多着只要满足其中一个。在C语言中,&&和||都属于逻辑运算符,并且都是双目运算符。逻辑运算符总共有3个,分别是"&&"、"||"和"!"。a && b,一假必假,结合性从左至右。||是逻辑或运算符,a || b,一真必真,结合性从左至右。&&和||在Java和PHP以及c#中都...

&&,||,&,还有== 这种重复二个的符号在C#中有什么讲究?
"&", "|" 是位运算符:例如:1&2, 1(二进制:01)和2(二进制:10)做与运算.结果是0(二进制:00)"=" 是赋值运算符:例如:a=3是把3赋给a 在C++中写 if(a=1) 会被认为 a=1;if(a!=0), 通常C++程序员会将常数写在前面来避免这个问题,就是if(1==a), 在C#中if(a=1)是非法的....

在C#中&跟&&的区别是什么
&是按位与运算符(或取地址运算符),&&是条件与运算符(也叫逻辑与运算符)。进行与运算时,二者的不同之处在于:&可以对两个整型数据,按照二进制位,逐位进行“与”运算,其运算结果为整型,&还可以对两个逻辑型数据进行“与”运算,期盼结果为逻辑型数据;而&&则只能对两个逻辑型数据进行“与...

C#中&&是什么意思
&&是与操作 ||是或操作 if(i==1&&j==2)就是当i=1并且j=2的时候if才成立 ||则只要有一个为真的时候就为真

相似回答
大家正在搜