i++
和++i
的值毋庸置疑一个是i原来的值一个是i自增之后的值,但i的值什么时候变化?
答案是:在同一条语句中i++
或++i
执行前都不变,一执行完立马就变化,二者都是如此,没有区别。具体顺序自然取决于语句中各单元执行的顺序。例如,
#include<bits/stdc++.h>
using namespace std;
signed main(){
int i = 1;
if (i==1 && i++ && i==2)
{
cout<<"ciallo~\n";
}
return 0;
}
输出:
ciallo~