C++ 关于while(i--)和while(--i)的理解

#include <iostream>
using namespace std;
int main()
{
    //先用后减;比如i=3先使用进行判断可进入循环,再i-1;这时进入循环内的i=2。
    //执行了两次循环后,i=1,先使用判断可进入循环再i-1,所以循环内i=0。
    //一共执行3次循环
    int i = 3;
	while(i--)
	{
		cout << i << " ";//输出2 1 0 
	}
	cout << endl;
	//-----------------------------------
	//先减后用;比如i=3先i-1=2,使用判断可进入循环;这时进入循环内的i=2。
	//执行了两次循环后,i=1,先i-1=0,判断不可进入循环。
    //所以,一共执行2次循环
	i = 3;
	while(--i)
	{
		cout << i << " ";//输出2 1 
	}
	cout << endl;
	return 0;
}
1)、

i++ 是先引用后增加 ,先在i所在的表达式中使用i的当前值,后让i加1

++i 是先增加后引用,让i先加1,然后在i所在的表达式中使用i的新值

他们其实都是i=i+1的意思,但是在程序中运行的时候的执行的顺序不一样。

i–和–i 的使用方法和作用同上面的一样的。

2)、

while()判断非0则执行循环。这里while(i–)和while(–i)分三步,比如前者while(i–):
1)先用,即先使用i的值进行循环条件判断;
2)再减,即i-1;
3)进入循环。

3)、一句话总结

加加在前,先加后用;加加在后,先用后加

参考:

关于while(i–)和while(–i)的理解-CSDN
i++和++i ,i–和--i的使用方法和作用-CSDN


版权声明:本文为Kevin_Xie86原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。