以下是 C 语言中各种运算符的优先级,按照优先级从高到低的顺序列出:
- (): 圆括号,函数调用,强制类型转换
- []: 数组下标
- ->: 结构体和共用体成员通过指针访问
- .: 结构体和共用体成员访问
- ++- --: 自增、自减
- +- -: 正、负号
- !- ~: 逻辑非、按位取反
- *- /- %: 乘、除、取模
- +- -: 加、减
- <<- >>: 左移、右移
- <- <=- >- >=: 比较
- ==- !=: 等于、不等于
- &: 按位与
- ^: 按位异或
- |: 按位或
- &&: 逻辑与
- ||: 逻辑或
- ?:: 条件运算符
- =- +=- -=- *=- /=- %=- &=- |=- ^=- <<=- >>=: 赋值运算符
- ,: 逗号运算符
了解运算符的优先级可以帮助程序员正确理解表达式的计算顺序,避免因为运算符优先级问题而导致程序出现逻辑错误。