C语言运算符优先级大全

2024-10-13 06:17:48

大家刚开始接触C语言的时候,总是会在运算符优先级这块弄混。今天小编整理了一下C语言中的运算符,给大家排排序。

C语言运算符优先级大全

2、第二级:!、~、++、--、-、(类型)、*、&、sizeof。这一级都是单目运算腿发滏呸符号,这一级的结合方向是从右向左。比如出现*p++,这时*和++同级别,先算右边,再禾韧喹缎左边。所以*p++等价于*(p++),而不是(*p)++。

C语言运算符优先级大全

4、第四级:<<、>>这是左移、右移运算符,位运算时可能需要用到。

C语言运算符优先级大全

6、第六级:&、^、|这三个符号也是位运算符号,其中内优先级,&>^>|。

C语言运算符优先级大全

8、第八级:? :也称为条件运算符号,是C语言中唯一的一个三目运算符,结合顺序是从右往左。

C语言运算符优先级大全

10、最低级:,逗号运算符也称为顺序求值运算符,在C语言中,运算级别最低。

C语言运算符优先级大全

小结

1、总的来说,初级运算符( 拘七呷憎)、[ ]、->、. 高于 单目运算符 高于 算数运算符(先乘除后加减) 高于 关系运算符 高于 逻辑运算符(不包括!) 高于 条件运算符 高于 赋值运算符 高于 逗号运算符。位运算符的优先级比较分散。

2、除了赋值运算符、条件运算符、单目运算符三类的平级运算符之间的结合顺序是从右至左,其他都是从左至右。

猜你喜欢