C 运算符
C 运算符是 C++ 的内置运算符的子集。
有三种类型的运算符。 一元表达式由一元运算符后跟一个操作数组成,或者由 sizeof
或 _Alignof
关键字后跟一个表达式组成。 该表达式可以是变量的名称,也可以是强制转换表达式。 如果表达式是强制转换表达式,则它必须括在括号中。 二进制表达式包括通过二元运算符联接的两个操作数。 三元表达式包括通过条件表达式运算符联接的三个操作数。
C 包含以下一元运算符:
符号 | “属性” |
---|---|
- ~ ! |
求反和补数运算符 |
* & |
间接寻址运算符和 address-of 运算符 |
_Alignof |
对齐运算符(自 C11 起) |
sizeof |
Size 运算符 |
+ |
一元加运算符 |
++ -- |
一元递增和减量运算符 |
二元运算符从左至右关联。 C 提供了以下二进制运算符:
符号 | “属性” |
---|---|
* / % |
乘法运算符 |
+ - |
相加运算符 |
<< >> |
移位运算符 |
< > <= >= == != |
关系运算符 |
& | ^ |
位运算符 |
&& || |
逻辑运算符 |
, |
有序评估运算符 |
Microsoft 16 位 C 编译器的早期版本所支持的基本运算符 (:>
) 在 C 语言语法摘要中进行了介绍。
条件表达式运算符的优先级低于二进制表达式的优先级并与其在右关联上存在差异。
使用运算符的表达式还包括赋值表达式,该表达式使用一元或二元赋值运算符。 一元赋值运算符是增量 (++
) 和减量 (--
) 运算符;二元赋值运算符是简单赋值运算符 (=
) 和复合赋值运算符。 每个复合赋值运算符是另一个二元运算符与简单赋值运算符的组合。