1、C语言的循环语句中++i和i++的区别是什么?
在循环中通常是在循环变量更新时用到i++; 或++i; 此时二者用法完全一样没有区别;
1. 独立的i++;和++i;效果一样,都使i的值增1。
2. 作为表达式的成员时,i++的取值是i,而++i的取值是i+1。
真要说区别的话++i效率比较高
懂了
i++是先使用i,再对其+1
++i是先对其+1,再使用
正解………
[来自 Cnblogs For Xamarin]
你可以这样记,就很简单了,我也是用这种方法:
程序读字符都是从上到下,从左到右来读。
人也一样。
首先得知道++是积累+1的意思
i++;从左到右读,先遇到i,所以意思是先使用i的值,再遇到++,i就积累+1了。
++i;从左到右读,先遇到++,所以意思是i先积累+1,再遇到i,就是使用i的值(这时候i已经被累计+1了)
例1:初始值i=1
程序如下
a=i++;
b=i;
输出a,b;答案就是a=1;b=2;
解析:因为从左到右读字符时,先遇到i再遇到++,意思就是先使用i值,再积累+1,“使用i的值”在这里的意思就是把i的值赋值给a,然后i再自加。
例2:初始值i=1
程序如下
a=++i;
b=i;
输出a,b;答案就是a=2;b=2;
解析:因为从左到右读字符时,先遇到++再遇到i,意思就是先把i的值积累+1,再使用i的值,“使用i的值”在这里的意思就是把i的值赋值给a。
太感谢,厉害呀!
你有这个问题的原因是你缺少一个编程基本概念->表达式的值.
每一个表达式都是有值的.i++就是一个表达式++i也是一个表达式.
他们的操作是一样的.但他们的值是不一样的.
道行太浅,还请多多指教