前面的哥们已经说了,我来回答你第二个追问吧 ,通过程序试验
#include
using namespace std;
int main()
{
int i=0;
while(++i!=0) //用i++得结果是" *1 ",用++i得结果是“1,2,3,*3”
{
cout< if(i==3)break;
}
cout<<"*"< return 0;
}
上述结果表明while(i++!=0){……}运行是按先判断i是否等于零,然后在整个循环内部语句执行前i已经加了1,所以即使判定不执行循环,i也已经加1(这个由输出是*1而不是*0可以判断得出)。而++i则先加再判断,应该理解起来没有问题了。
水平有限,不过还是希望能帮到你~
你说的是C语言吧,while( i++)和while(++i)在循环内是一样的,是只不过在循环结束后i的值不一样