以下是C语言中常见的运算符及其示例,以及它们是双目运算符还是三目运算符,以及它们的优先级:
运算符类型 | 运算符 | 示例 | 说明 | 类型 | 优先级 |
---|---|---|---|---|---|
算术运算符 | + | a + b | 加法 | 双目运算符 | 最低 |
- | 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 | 逻辑非 | 单目运算符 | 高 | |
关系运算符 | == | a == b | 等于 | 双目运算符 | 中间 |
!= | a != b | 不等于 | 双目运算符 | 中间 | |
> | a > b | 大于 | 双目运算符 | 中间 | |
< | a < b | 小于 | 双目运算符 | 中间 | |
>= | a >= b | 大于等于 | 双目运算符 | 中间 | |
<= | a <= b | 小于等于 | 双目运算符 | 中间 | |
位运算符 | & | a & b | 与 | 双目运算符 | 中间 |
| | a | b | 或 | 双目运算符 | 中间 | |
^ | a ^ b | 异或 | 双目运算符 | 中间 | |
~ | ~a | 按位取反 | 单目运算符 | 高 | |
<< | a << b | 左移 | 双目运算符 | 低 | |
>> | a >> b | 右移 | 双目运算符 | 低 | |
条件运算符 | ? : | a > b ? a : b | 如果 a 大于 b,则结果为 a,否则结果为 b | 三目运算符 | 较高 |
sizeof 运算符 | sizeof | sizeof(int) | 返回变量或类型的大小(以字节为单位) | 单目运算符 | 最低 |
逗号运算符 | , | a = 1, b = 2 | 逗号表达式,从左到右计算,返回最后一个表达式的 |
C语言中的运算符表达式是用于执行各种计算和操作的组合。运算符表达式由运算符和操作数组成,它们按照一定的优先级和结合性进行求值。以是详细讲解:
1. 算术运算符
算术运算符用于执行基本的数学运算,包括加法、减法、乘法、除法和取模等。
-
加法
+
:将两个操作数相加。 -
减法
-
:将第一个操作数减去第二个操作数。 -
乘法
*
:将两个操作数相乘。 -
除法
/
:将第一个操作数除以第二个操作数。 -
取模
%
:求第一个操作数除以第二个操作数的余数。
2. 赋值运算符
赋值运算符用于给变量赋值,将右侧的值赋给左侧的变量。
-
赋值
=
:将右侧的值赋给左侧的变量。
3. 自增和自减运算符
自增和自减运算符用于增加或减少变量的值。
-
自增
++
:将变量的值增加1,例如,a++:先赋值再自增,++a先自增再赋值。 -
自减
--
:将变量的值减少1,例如,a--先赋值再自减,--先自减再赋值。
4. 关系运算符
关系运算符用于比较两个值之间的关系,返回一个布尔值(真或假)。
-
等于
==
:检查两个操作数是否相等。 -
不等于
!=
:检查两个操作数是否不相等。 -
大于
>
:检查第一个操作数是否大于第二个操作数。 -
小于
<
:检查第一个操作数是否小于第二个操作数。 -
大于等于
>=
:检查第一个操作数是否大于或等于第二个操作数。 -
小于等于
<=
:检查第一个操作数是否小于或等于第二个操作数。
5. 逻辑运算符
逻辑运算符用于组合多个条件并生成一个布尔结果。
-
与
&&
:当且仅当两个条件都为真时,结果才为真。 -
或
||
:当任一条件为真时,结果为真。 -
非
!
:对条件取反,如果条件为真,则结果为假;如果条件为假,则结果为真。
6. 位运算符
位运算符用于对整数的二进制位进行操作。
-
与
&
:按位与操作,对应位都为1时结果为1。 -
或
|
:按位或操作,对应位有一个为1时结果为1。 -
异或
^
:按位异或操作,对应位不同时结果为1。 -
取反
~
:按位取反操作,对每个位取反。 -
左移
<<
:将操作数的二进制位向左移动指定位数。 -
右移
>>
:将操作数的二进制位向右移动指定位数。
7. 条件运算符
条件运算符用于根据条件选择不同的值。
-
三目运算符
? :
:根据条件选择两个值中的一个。
8. 逗号运算符
逗号运算符用于分隔表达式,按顺序执行,并返回最后一个表达式的值。
-
逗号
,
:分隔多个表达式,按顺序执行,返回最后一个表达式的值。