优先级问题总结
基本的优先级顺序
指针最优,单目运算符 > 双目运算符
算数运算> 后移位运算> 位运算>逻辑运算
优先级结合顺序
大多数从 从左至右, 除了 单目运算符,条件运算符, 赋值运算符 从右向左
Tips
1. 赋值运算符 赋值运算符具有右结合的特性,当表达式中含有多个赋值运算符时,从右向左 结合。各个变量应该具有相同的数据类型
Example:
int a;
int * p;
a=p=0; (错在:p被赋值后,给a的是int* 变量,数据类型不匹配.
2. 赋值运算符 : 赋值运算符的左操作数必须是非const 。其实就是说 被赋值的对象 不能是常量
3. 自增 自减 运算符:
前缀运算符 先变后用
后缀运算股:先用后变
此方法除了运算的变量自己的增减,也使用在在一个运算语句中,对同一个变量进行多次前缀和后缀运算
eg
int a ,b,c,d;
a=5;
b=5;
c=(a++)+(a++)+(a++); 先用后变 c=15;
d=(++b)+(++b)+(++b) VS2010 中 该值为8+8+8+ 为24,