C 运算符
运算符
(按优先级顺序排列)
(关联性即运行顺序)
-
表达式(从左到右关联)
-
[
]
(
)
括号`.` `->` 成员选择 `++` `--` 一元递增和减量运算符(后缀)
-
-
一元运算(从右到左关联)
-
-
~
!
求反和补数运算符`*` `&` 间接寻址运算符和 address-of(求址) 运算符 `sizeof` Size 运算符 `+` 一元加运算符 `++` `--` 一元递增和减量运算符(前缀)
-
(
typecast)
类型强制转换
-
-
二元运算符(从左至右关联)
-
*
/
%
乘法运算符 乘、除、取余 -
+
-
相加运算符 加、减 -
<<
>>
移位运算符 左、右 -
<
>
<=
>=
关系运算符 小于、大于、小于等于、大于等于 -
==
!=
关系运算符 等于、不等于 -
&
位运算符 与 -
|
位运算符 异或 -
^
位运算符 与或 -
&&
逻辑运算符 与 -
||
逻辑运算符 或 -
? :
条件表达式 (从右到左关联) -
=
*=
/=
%=
+=
-=
<<=
>>=
&=
^=
|=
简单和复合赋值(从右到左关联) -
,
有序评估运算符,从左到右顺序运行
-
条件表达式例:
1
2
3
4
5
6
7
8
9
int i = -5;
int j;
void main() {
j = (i < 0) ? (-i) : (i);
printf("%d\n",j);
}
1
2
5
[C kernel] Executable exited with code 2