c语言学习总结--优先级(3)

1、如果一个操作数后面有多个后缀,按照离操作数从近到远的顺序(也就是从左到右)依次运算,比如a.name++ ,先算a.name ,再++,这里的.name应该看成a 的一个后缀,而不是把. 看成双目运算符。

2、单目运算符,包括前缀自增++、前缀自减-- 、sizeof 、类型转换() 、取地址运算& 、指针间接寻址* 、正号+ 、负号- 、按位取反~ 、逻辑非!  。如果一个操作数前面有多个前缀,按照离操作数从近到远的顺序(也就是从右到左)依次运算,比如!~a ,先算~a,再求! 。

3、乘* 、除/ 、模% 运算符,

加+ 、减- 运算符,

移位运算符<<和>>,

关系运算符< > <= >=,

相等性运算符==和!=,

按位与&,按位异或^ ,

按位或| ,逻辑与&&,

逻辑或|| ,

条件运算符:?,

是右结合的。

原文地址:https://www.cnblogs.com/hxu7373/p/3486836.html