为了账号安全,请及时绑定邮箱和手机立即绑定

int i=1;int j=i++为什么i的值变了

int i=1;int j=i++为什么i的值变了

C
蝴蝶刀刀 2019-03-28 18:17:55
int i=1;int j=i++为什么i的值变了
查看完整描述

2 回答

?
牛魔王的故事

TA贡献1830条经验 获得超3个赞

首先 i++ 就是个表达式 是 i = i + 1 的简写,所以 i 自然就 加了1
这里是 i ++ 意思就是先用后加 先将 1 赋给 j ,再自增。

如果是 ++ i 意思就是先加后用,先变成 2,再赋给 j
所以这里的 j 的值是1。

查看完整回答
反对 回复 2019-03-31
?
FFIVE

TA贡献1797条经验 获得超6个赞

i++表示先引用i的值进行运算,此后+1并赋值给自己。
所以【int j=i++】,第一步是引用i的值1,将其赋值给j;第二步,i自身+1;最终i为2,j为1。

查看完整回答
反对 回复 2019-03-31
  • 2 回答
  • 0 关注
  • 1727 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信