++与*的优先级

318 阅读1分钟

++与*的优先级

  1. 前置型++:前置++与*运算符优先级相同,运算顺序为从右向左
  2. 后置型++:后置++比*运算符优先级高,运算顺序为从左向右

详解

*++p:p先自+,然后*p,最终为3——马上改变指针,*下一个指针

*p++:值为arr[0],即1,该语句执行完毕后,p指向arr[1]    ————之后改变指针,*原数据,指针++  

*(p++):效果等同于*p++    ——之后改变指针,*原数据,指针++  

(*p)++:先*p,即arr[0]=1,然后1++,该语句执行完毕后arr[0] =2——不改变指针,数据++  

++*p:先*p,即arr[0]=1,然后再++,最终为2——不改变指针,++数据