C++中++(a++)为什么错误

a++是a的自增,结果是a+1,这不是一个左值,不能再进行自增操作。

比如:

a+3=10;

这个代码是错误的,因为这个不能确定一个储存单元。
你不能说出a+3的位置,所以这个表达式只能放在右侧,不能进行赋值赋值。

可以这样解释:

  1. (a++)本身是一个表达式没有问题
  2. ++x 是单目前缀运算符,需要作用到一个变量上
  3. 但它不能作用到一个表达式上,所以++(a++)不行
  4. 通过两句a++; ++a;应该也可以达到目的。
发布了92 篇原创文章 · 获赞 32 · 访问量 4662

猜你喜欢

转载自blog.csdn.net/AngelDg/article/details/104129946