c语言运算符优先顺序

admin 32 0

在C语言中,运算符的优先级决定了表达式中运算的顺序,以下是C语言中运算符的优先级,从高到低排列:

1. 后缀运算符(如函数调用、数组下标、括号等)

2. 一元运算符(如取反、取地址、按位取反等)

3. 乘法、除法、模运算符

4. 加法、减法运算符

5. 关系运算符(如大于、小于等)

6. 相等运算符(如等于、不等于等)

7. 按位与运算符

8. 按位异或运算符

9. 按位或运算符

10. 逻辑与运算符

11. 逻辑或运算符

12. 三元运算符(? :)

13. 赋值运算符(=、+=、-=、*=、/=、%=、&=、^=、|=)

14. 逗号运算符

需要注意的是,同一优先级的运算符会按照从左到右的顺序进行计算,除非使用了括号,括号内的表达式会优先计算,在表达式 `a = b + c * d` 中,乘法会先于加法进行,但如果在表达式前加上括号 `((a = b) + c) * d`,则加法会先于乘法进行。