zoukankan      html  css  js  c++  java
  • c语言——知识点

    环境:

    ubuntu 13.04 32位

    gcc version 4.7.3 

    ++i,i++

    代码如下:

    #include <stdio.h>
    
    main()
    {
        int i;
        //test assignment
        int j;
        i=0;
        printf("before i++  assignment,i:%d
    ",i);
        j=i++;
        printf("after i++  assignment,i:%d j:%d
    ",i,j);
        i=0;
        printf("before ++i  assignment,i:%d
    ",i);
        j=++i;
        printf("after ++i  assignment,i:%d j:%d
    ",i,j);
        //test if
        i=1;
        printf("before if:%d
    ",i);
        if(i++){
            printf("in if:%d
    ",i);
        }
        printf("out if:%d
    ",i);
        //test for
        i=0;
        printf("before for:%d
    ",i);
        for(;i<1;i++){
            printf("in for:%d
    ",i);
        }
        printf("out for:%d
    ",i);
    }

    结果如下:

    before i++  assignment,i:0
    after i++  assignment,i:1 j:0
    before ++i  assignment,i:0
    after ++i  assignment,i:1 j:1
    before if:1
    in if:2
    out if:2
    before for:0
    in for:0
    out for:1

    分析:

    自增运算符作为前缀和后缀的区别:

    前缀指变量使用之前就已经获得了改变。后缀指变量在使用之后才会改变。

    问题是:怎样才算是使用前,怎样才算是使用后?

     

  • 相关阅读:
    学习进度条
    学术诚信与职业道德
    czxt
    操作系统
    04 17评论博客
    0414 结对 2.0 33 34
    0408 汉堡包
    (补)结对心得
    构建之法4读后感
    复利计算4.0
  • 原文地址:https://www.cnblogs.com/zhizhou/p/3175307.html
Copyright © 2011-2022 走看看