C运算符的种类和优先级
大约 2 分钟
C运算符的种类和优先级
C语言运算符种类和优先级
C语言中的运算符种类繁多,它们按照优先级不同可以分为多个级别。以下是C语言中运算符的分类和优先级,从高到低排序:
后缀运算符
- 括号运算符:函数调用、数组索引、强制类型转换。
- 下标运算符:数组元素访问。
- 箭头运算符:结构体成员访问。
- 点运算符:结构体或类成员访问。
一元运算符
- 递增和递减运算符:
++i和--i。 - 正负号运算符:
+i和-i。 - 逻辑非运算符:
!。 - 按位取反运算符:
~。 - 强制类型转换运算符:
(type)。 - 指针运算符:
*和&。 - 大小运算符:
sizeof。
乘除运算符
- 乘法:
*。 - 除法:
/。 - 取模:
%。
加法运算符
- 加法:
+。 - 减法:
-。
移位运算符
- 左移:
<<。 - 右移:
>>。
关系运算符
- 小于:
<。 - 小于等于:
<=。 - 大于:
>。 - 大于等于:
>=。
相等运算符
- 等于:
==。 - 不等于:
!=。
位与运算符
- 按位与:
&。
位异或运算符
- 按位异或:
^。
位或运算符
- 按位或:
|。
逻辑与运算符
- 逻辑与:
&&。
逻辑或运算符
- 逻辑或:
||。
条件运算符
- 三元条件运算符:
?:。
赋值运算符
- 简单赋值:
=。 - 复合赋值:
+=,-=,*=,/=,%=,&=,|=,^=,<<=,>>=。
逗号运算符
- 用于分隔表达式,先计算左侧表达式,再计算右侧表达式。
求地址运算符
- 取地址:
&。
解引用运算符
- 访问指针指向的值:
*。
在编写C语言程序时,需要特别注意运算符的优先级,以确保表达式的计算顺序符合预期。如果需要改变计算顺序,可以使用括号来明确指定。