逻辑运算符与位运算符

简介: 逻辑运算符与位运算符

逻辑运算符


1. && 逻辑与


两个条件都为真,则结果为真


if((a>b) && (a<c))
if(b<a<c) //这种表达方式是错误的


2. || 逻辑或


两个条件至少有一个为真,则结果为真


if((a>b) || (a<c))


3. ! 逻辑非


if(!(a>b))
{
}


逻辑与:  A  &&   B      只有A 和 B同时为真  整个表达式为真   ,      如果A为假 ,不会再判断B的真假(逻辑与的短路特性)
逻辑或:  A   ||    B        只有A 和 B同时为假  整个表达式为假           如果A为真,不会再判断B的真假(逻辑或的短路特性)


20200312200927725.png


位运算

按位与:&


1100 0011
1111 0000
-------------------------------------------------------------------------------------------------------
1100 0000


语法:全1为1 其他为0

特点:和1相与 不变 和0相与为0

场景:将固定位 清0

案例:请将num =1100 0011的0、1位清0,其他位不变


1100 0011
1111 1100 &
-------------------------------------------------------------------------------------------------------------------------
1100 0000
num = num & 1111 1100


按位或:|


1100 0011
1111 0000 |
------------------------------------------------------------------------------------------------------
1111 0011


语法:有1为1 全0为0

特点:和0相或 保持不变 和1相或 置1

场景:将固定位 置1

案例:请将num=1100 0011的4、5位置1,其他位不变


1100 0011
0011 0000  |
-------------------------------------------------------------------------------------------------------------------------
1111 0011
num = num | 0011 0000


按位取反:~


语法:0变1 1变0


~(1100 0011) == 0011 1100


按位异或:^


1100 0011
1111 0000 ^
----------------------------------------------------------------------------------------------------
0011 0011
1111 0000 ^
----------------------------------------------------------------------------------------------------
1100 0011


语法:相同位0  不同为1    
特点:和0异或 不变     和1异或  取反    
场景:将固定的位 发生翻转


相关文章
|
4月前
|
Java 测试技术 数据安全/隐私保护
day12:逻辑运算符
【7月更文挑战第12天】🏆本文收录于「滚雪球学Java」专栏,专业攻坚指数级提升,希望能够助你一臂之力,帮你早日登顶实现财富自由🚀;同时,欢迎大家关注&&收藏&&订阅!持续更新中,up!up!up!!
34 1
|
4月前
|
搜索推荐 安全 Java
day11:关系运算符
【7月更文挑战第11天】🏆本文收录于「滚雪球学Java」专栏,专业攻坚指数级提升,希望能够助你一臂之力,帮你早日登顶实现财富自由🚀;同时,欢迎大家关注&&收藏&&订阅!持续更新中,up!up!up!!
32 2
|
5月前
|
Python
位运算符
【6月更文挑战第28天】位运算符。
34 1
|
5月前
|
C#
C#中的比较和逻辑运算符
C#中的比较和逻辑运算符
|
5月前
|
存储 编译器 C++
C++中的位运算符
C++中的位运算符
30 0
|
6月前
|
C++
c++关系运算符
c++关系运算符
42 1
关系运算符
关系运算的主要特征 ,进行大小的比较处理。
68 0
关系运算符
|
C语言 开发者
关系运算符和逻辑运算符|学习笔记
快速学习关系运算符和逻辑运算符
176 0
关系运算符和逻辑运算符|学习笔记