请问for循环中写i++与++i有啥区别吗
发布时间:2025-05-13 05:56:24 发布人:远客网络
一、请问for循环中写i++与++i有啥区别吗
For循环中i++与++i的主要区别如下:
前者是:先引用,后增加,,后者是:先增加,后引用,++i是先改变i的值,而i++是先使用i值然后再改变它的值。
例如:i的原值是5,则对于j=++i,j的值为6;对于j=i++,j的值为5,然后j的值变为6。
它们两个表达形式不同,其输出结果也是不一样的,i++输出结果是1,而++i输出结果是2。
"++"是C和C++里的自增运算符。其中:++i是使用i之前先使i加一。i++是使用i之后再加一。如果不能理解,那么可以理解为:++i是先计算,再操作,i++是先操作,再计算。其中:++i和i++是谁在前先取谁,但加一优先运算并赋给原值,取的值再参与其他运算。
++i和 i++的结果是一样的,都要等代码块执行完毕才能执行语句,但是性能是不同的。在大量数据的时候++i的性能要比i++的性能好原因:i++由于是在使用当前值之后再+1,所以需要一个临时的变量来转存。而++i则是在直接+1,省去了对内存的操作的环节,相对而言能够提高性能。
二、C语言中:for(i=0;i<3;i++) for(j=0;j<3;j++)是什么意思
1、其中for(j=0;j<3;j++)是for(i=0;i<3;i++)的内嵌循环;
2、先循环第一个for i=1 j=1,2,3 i=2 j=1,2,3 i=3 j=1,2,3一共3*3执行9次。
3、for循环由循环体及循环的终止条件两部分组成,for循环其在各种编程语言中的实现与表达有所出入,但基本为以C语言和pascal语言代表的两种形式。
4、for循环中的变量可以是一个也可以是多个,不要局限于一个变量处理到底,那样有时会很单调,当程序适合把多个变量组成循环时,用多个for语句来表示就是有些浪费了。
5、for循环中语句可以为语句体,语句体外加大括号"{}"将参加循环的语句括起来。 for循环的三个表达式都是逗号表达式,这样来说,其实每个分号表达式可以由几个逗号表达式构成,中间用",”隔开,最后以“;”结束。
6、参考资料来源:百度百科-for循环
三、c语言for(i=0; i<6; i++) 什么意思 原理
1、首先执行第一句 i= 0;算是一个初始化。
2、其次执行第二句 i< 6,这算是一个判断,如果这个条件不成立,则不进入for循环结束。
3、之后会走for循环里面的语句,printf那个。
4、执行完for循环里面的语句之后,再执行for括号中的第三句 i++,让i自加 1,这时候 i= 1+ 1=2,然后再走i< 6,明显2< 6条件成立,继续for循环中的语句,如此循环往复,一直到i>= 6使得 i< 6的条件不成立为止。