本文主要关于演示指针与自增自减运算符结合的时候的运算顺序。
表达式 | 含义 |
---|---|
*p++ 或*(p++) |
自增前表达式的值是*p ,然后自增p |
(*p)++ |
自增前表达式的值是*p ,然后自增*p |
*++p 或*(++p) |
先自增p ,自增后表达式的值是*p |
++*p 或++(*p) |
先自增*p ,自增后表达式的值是*p |
原理是自增和*
在一起时结合顺序由右到左,比如*p++
,先运算p++
,也就是p
当前的值,再运算*p
对寻址,再对p
自增。
注意以上所有的表达式返回的值都是*p
,只不过对分别是对p
和*p
的自增操作。