已知:int i=5;执行语句i+=++i;后,i的值怎么算?
发布网友
发布时间:2022-05-27 13:49
我来回答
共4个回答
热心网友
时间:2023-10-26 10:27
首先+=是复合运算符。
可以看成
i = i + (++i)
我现在得到的答案是12,这是用C-Free运行得到的结果。
热心网友
时间:2023-10-26 10:28
I=I+(I+1)=11
问题的关键是要看编辑环境中对变量是如何处理的,问题的关键在于‘i+=’的i值在=右则自加后是重新载入还是以先前的编译为准
热心网友
时间:2023-10-26 10:28
按运算符的优先级可以拆成两步:
i+=i; //等价于i=i+i; 所以i=5+5=10;
i=i+1; //i=10+1=11;
结果为11
热心网友
时间:2023-10-26 10:29
i+=++i
1。先算++,即i值变为6。
2。再算i+=这部分,i=i+6=5+6=11.
我刚才用Java运行了下是11