C语言中的 i++ 和 ++i 的区别

Posted 紫洁

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C语言中的 i++ 和 ++i 的区别相关的知识,希望对你有一定的参考价值。

(1) i ++:

int i = 0;

while (i < 10) {
i ++;
}

(2)
++i:
int i = 0;
while (i < 10) {
++ i;
}
(1)与(2),经过运算后,i的值都是10。在while和for循环中的 ++i 和 i++ 是没有区别的。

现在我们来看一段程序

#include <studio.h>
int main() {
int i,x;
i = 1;
x = 1;
x = i ++; //先让x变成i的值1,再让i加1
print("%d", x); //x=1
print("%d", i); /i=2

i = 1;
x = 1;
x = ++i; //先让i加1, 再让x变成i的值2
print("%d", x); //x=2
print("%d", i); //i=2
}

i++和++i的区别就是:

i++ :先引用,后增加
++i :先增加,后引用

换句话就是:

i++ : 先在i所在的表达式中使用i的当前值,再让i加1
++i : 先让i加1,再在i所在的表达式中使用i的新值

以上是关于C语言中的 i++ 和 ++i 的区别的主要内容,如果未能解决你的问题,请参考以下文章

C语言中++c与c++有啥区别?

C中的i++和++i有啥区别? [复制]

C语言中put()与puts()的区别?

通俗易懂C语言中,for循环中i++与++i的区别

C语言和VB的区别是啥?

用C语言,将字符串str中的所有字符k 删除