Skip to content

C 运算符

C 提供了丰富的运算符,分为算术、关系、逻辑、位运算、赋值、条件、指针、成员与逗号等。

1. 算术运算符

+ - * / % ++ --

注意:整数除法截断,小心 /% 与负数;++ii++ 的求值顺序。

2. 关系与比较

== != > < >= <=

3. 逻辑运算符

&& || !,短路求值。

4. 位运算

& | ^ ~ << >>

  • 常用于标志位、掩码、性能优化

5. 赋值与复合赋值

= += -= *= /= %= <<= >>= &= |= ^=

6. 条件运算符

cond ? a : b

7. 指针与成员运算符

* & -> . []

8. sizeof 与对齐

sizeof(expr)sizeof(type)

9. 运算符优先级与结合性

  • 先乘除后加减
  • 括号提高可读性,避免依赖复杂优先级

10. 示例

c
#include <stdio.h>

int main(void) {
    unsigned x = 0b1010u; // 编译器支持二进制字面量时
    unsigned y = 0b1100u;
    printf("x|y=%u, x&y=%u, x^y=%u\n", x|y, x&y, x^y);
    return 0;
}

11. 小结

熟悉运算符的语义与优先级是写出正确表达式的基础,尽量用括号让意图更清晰。

本站内容仅供学习和研究使用。