【c++】语言基础:++i & i++ 的底层区别

++i 和 i++的底层区别

  • ++i,是先取 i 的地址,增加它的内容 ,然后把值放到寄存器中
  • i++,是先取 i 的地址,把它的值装入寄存器,然后增加内存中 i 的值

关于 ++i 是左值,而 i++ 是右值的问题

  • ++i,返回值是 i 本身自己,是一个变量
  • i++,返回值是 i 之前的一个数值,是一个数,不是变量

因此 ++(i++) 这就是错误的,因为 i++ 返回的是右值,而不能 ++右值。

关于效率

  • i++,会产生临时变量,效率比 ++i 要低一些,因此推荐使用 ++i。
  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值