Why ++*p++ works while ++i++ does not?

前端 未结 2 1872
梦谈多话
梦谈多话 2021-01-14 10:00

Assume p is a integer pointer and i is an integer:

*p++ gives an integer value corresponding to p

2条回答
  •  刺人心
    刺人心 (楼主)
    2021-01-14 10:42

    ++i++ is decomposed as following:

    i++
    ++(result)
    

    Problem: i++ returns a rvalue, ie a 'temporary' value, not incrementable. This is because i++ returns i before incrementing it.

提交回复
热议问题