java、C#以及C++中&&和||,&和|的联系和区别

来源:互联网 发布:刘姓取名知乎 编辑:程序博客网 时间:2024/06/03 18:04

C,C#,C++中&&和||,&和|的联系和区别

两者计算结果相同(针对各自的运算对象),只是性能上有差别而已。

&&和||:逻辑运算符

&和|:按位运算符

&&是且的意思,a&&b 两者都为真才为真.||是或的意思,a||b 两者有一为真即真.&,|是位运算符.即对位进行运算,如00000011 & 00000001=0000000100000011 | 00000001=00000011 

对于(&&,||),运算的对象是逻辑值,也就是True/False
运算结果只有下列四种情况。
True  && True  = True
True  && False = False
False && True  = False
False && False = False

True  || True  = True
True  || False = True
False || True  = True
False || False = False

对于(&,|),运算的对象是位,也就是1/0
运算结果只有下列四种情况。
1 & 1 = 1
1 & 0 = 0
0 & 1 = 0
0 & 0 = 0

1 | 1 = 1
1 | 0 = 1
0 | 1 = 1
0 | 0 = 0

&&和&对于他们各自的运算对象来说,结果是一样的。
同理,||和|也是一样的。

原创粉丝点击