• c 语言自增与自减


    /*
    前段时间看完C语言后对自增和自减有理解的不是很好,于是在网上也看了一些相关的帖子。对此总算是将
    这个问题解决了!
    
    先看一个简单的;
    */
    
    # include <stdio.h>
    void main()
    {
        int a, b, c, d;
    
        a = 5; 
        b = 5;
        
        c = (a++) + (a++) + (a++);
        d = (++b) + (++b) + (++b);
    
        printf("a = %d, b = %d, c = %d, d = %d\n",a, b, c, d);
    }
    
    /*
    ======================运行结果====================
    a= 8, b = 8, c =15, d = 22
    Press any key to continue
    -------------------------------------------------
    
    
    ======================说明=======================
    对于自增和自减这个问题,我觉的最大的问题就在于自增或是
    自减的(++ --)在前后的问题了;a++ ; ++b;
    ++a表示:a自增1后再与他其它运算;
    b++表示:b先与其他运算后再自增1;
    
    自减和自增是一样的,我这里就不讲了;
    
    
    下面再看几个例子;
    
    */
    
    # include <stdio.h>
    void main()
    {
        int i = 3; 
        int j = 4;
    
        i++;
        ++j;
    
        printf("i = %d, j =%d\n",i, j);
    }
    
    /*
    ========================运算结果==================
    i = 4, j =5
    Press any key to continue
    
    --------------------------------------------------
    
    ========================说明======================
    这个例子和上面的那个例子是一样的,可以说是上面的那
    个例子的变形;所以这个例子我就不说了!
    
    
      好了我们将上面的那个例子稍微改动一下;
    */
    
    
    # include <stdio.h>
    void main()
    {
        int i = 3;
        int j = 4;
        int a = i++; //这里我们可以理解成a = 3;
        int b = ++j; //这里我们可以理解成b = (4+1);
    
        printf("a= %d,b= %d\n", a, b);
    
    
    /*
    ========================运算结果==================
    a= 3,b= 5
    Press any key to continue
    
    --------------------------------------------------
    
    ========================说明======================
    首先我们再回顾一下自增和自减的概念,然后i++和++j
    i++是先将3赋值给a然后再加1。
    ++j是先将j的值加1后再赋值给b;
    
    
    下面难度加点了!
    */
    # include <stdio.h>
    void main()
    {
        int i = 3;
        int j = 4;
    
        int a = (i++) + (i++);
        int b = (++j) + (++j);
    
        printf("a = %d, b = %d\n", a, b );
    }
    /*
    ========================运算结果==================
    
    a = 6, b = 12
    Press any key to continue
    
    --------------------------------------------------
    
    ========================说明======================
     i++的理解应该是执行完整个表达式的其他操作后,
     然后才自增,所以例子中的a=3+3=6;而后i再自增2次,
     i=5;相反,++j是先自增然后再参加其它运算,
     所以b=6+6=12.
  • 相关阅读:
    转:C#操作摄像头
    C# Memcached缓存
    WCF:调用方未由服务器进行身份验证
    SQL Server 存储过程进行分页查询
    SQL Server T-SQL高级查询
    C#设计模式总结(转)
    C#中构造函数和析构函数区别
    C#: static关键字的作用(转)
    C#结构体和类的区别(转)
    .NET多线程编程(转)
  • 原文地址:https://www.cnblogs.com/flay/p/2487657.html
Copyright © 2020-2023  润新知