运算符是用于在程序中执行各种操作的符号或符号组合。它们与操作数一起使用,操作数可以是变量、常量或表达式。运算符可以用于执行算术运算、赋值、比较、逻辑操作等。
下面是一些常见的运算符类型及其示例:
- 算术运算符:
+ 加法:a + b - 减法:a - b * 乘法:a * b / 除法:a / b % 取余:a % b ++ 自增:++a -- 自减:--b
- 赋值运算符:
= 赋值:a = b += 加等于:a += b // a = a + b -= 减等于:a -= b // a = a - b *= 乘等于:a *= b // a = a * b /= 除等于:a /= b // a = a / b %= 取余等于:a %= b // a = a % b
- 比较运算符:
== 等于:a == b != 不等于:a != b > 大于:a > b < 小于:a < b >= 大于等于:a >= b <= 小于等于:a <= b
- 逻辑运算符:
&& 逻辑与:a && b || 逻辑或:a || b ! 逻辑非:!a
- 逻辑与运算符 (&&):
-
- 如果两个操作数都为true,则结果为true。否则,结果为false。
注意:逻辑与运算符是短路运算符,如果第一个操作数为false,则不会执行第二个操作数的求值。
- 逻辑或运算符 (||):
-
- 如果两个操作数中至少有一个为true,则结果为true。否则,结果为false。
注意:逻辑或运算符也是短路运算符,如果第一个操作数为true,则不会执行第二个操作数的求值。
- 逻辑非运算符 (!):
-
- 如果操作数为true,则结果为false。如果操作数为false,则结果为true。
4 逻辑异或运算符 (^):
如果两个操作数的值不相同,则结果为true。如果两个操作数的值相同,则结果为false。
- 位运算符:
& 位与:a & b | 位或:a | b ^ 位异或:a ^ b ~ 位取反:~a << 左移:a << 2 >> 右移:a >> 1
按位与运算符 (&):
- 对操作数的每个对应位执行与操作。如果两个操作数的对应位均为1,则结果为1;否则,结果为0。
按位或运算符 (|):
- 对操作数的每个对应位执行或操作。如果两个操作数的对应位至少有一个为1,则结果为1;否则,结果为0。
按位异或运算符 (^):
- 对操作数的每个对应位执行异或操作。如果两个操作数的对应位相同,则结果为0;否则,结果为1。
按位取反运算符 (~):
- 对操作数的每个位执行取反操作。将1变为0,将0变为1。
左移运算符 (<<):
- 将操作数的二进制位向左移动指定的位数。
- 表达式 << 位数
解释:
表达式往左移动多少位,空出来的地方补0
右移运算符 (>>):
- 将操作数的二进制位向右移动指定的位数。
表达式往右移动多少位 ,空出来的位置(补最高位或者补0)
- 条件运算符:
? : 条件运算符(三元运算符):a > b ? a : b
条件运算符,也被称为三元运算符,是一种在编程语言中常用的简洁的条件表达式。它由三个部分组成,通过判断条件来选择两个可能的结果之一。
条件运算符的语法如下:
条件 ? 表达式1 : 表达式2
解释条件运算符的各个部分:
- 条件:一个布尔表达式,用于判断哪个表达式将被执行。
- 表达式1:当条件为真时执行的表达式。
- 表达式2:当条件为假时执行的表达式。
条件运算符的工作原理如下:
- 如果条件为真,则执行表达式1,并将其结果作为整个条件运算符的结果。
- 如果条件为假,则执行表达式2,并将其结果作为整个条件运算符的结果。
下面是一个使用条件运算符的示例:
运算符优先级
运算符总结(优先级从大到小):
括单术 移关位 逻三赋逗
括: 括号: () [] -> .
单: 单目: ++ -- ! ~ & * sizeof() (强转)
术: 算术: + - * / %
移: 移位: << >>
关: 关系: > < >= <= == !=
位:位运算:& | ^
逻: 逻辑: && ||
三: 三目: ?:
赋: 赋值: = += -= *= /= .....
逗: 逗号: ,