• 【C】i++和++i


    一直没有仔细看过i++和++i的区别,但是每次遇到都要纠结一会,这次花了几分钟弄懂。 ##++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的新值

    取决于++和i的相对位置:

    ++在i前面,i先加1,然后在表达式中用i的值;++在i后面,先在表达式中用i的值,然后i再加1。

    [摘自](https://www.cnblogs.com/muzijie/p/5617039.html)
    不怕世界大,就怕格局小
  • 相关阅读:
    CF1051F The Shortest Statement
    [ZJOI2006]书架
    [FJOI2007]轮状病毒
    CF147B Smile House
    HDU4415 Assassin’s Creed
    飞行员配对方案问题
    [NOI2005]瑰丽华尔兹
    [NOIP2016]换教室
    [国家集训队]部落战争
    [NOI2005]聪聪与可可
  • 原文地址:https://www.cnblogs.com/wangjian1226/p/11010282.html
Copyright © 2020-2023  润新知