问答详情
源自:3-3 自增与自减运算符

例子中的a+1

为什么例题里加注释那行a+1不改变结果啊?之前的a++那些就都改变了啊

提问者:老刘氓同学 2019-01-15 22:57

个回答

  • 夏提雅
    2019-02-16 21:10:08

    没有赋值

  • qq_慕仰3335730
    2019-01-23 11:23:49

    #include<stdio.h>

    int main(){

    int a = 100;

    //++a是先运算后再取结果的a值;

    //a++是先取a值在运算;

    printf("%d\n",a++);//先取a值为100,a加一 ,得到a值结果为101

    printf("%d\n",++a);//此时a自增后的值为101,先运算101+1=102,后取结果a值为102 

    printf("%d\n",--a);//a取值为102-1=101 ,先运算后取结果为101 

    printf("%d\n",a--);//a取值为101-1=100,先取值后运算,a值不变为101 

    printf("%d\n",a+1);//a值经过自减后,a取值为100,100+1=101,a值为101

    printf("%d\n",a);//a值经过自减后,a取值为100,输出100 ,a+1的值不带入a中

    return 0;

    }


  • 慕桂英5108905
    2019-01-16 10:05:55

    #include<stdio.h>

    int main(){

    int a = 100;

    printf("%d\n",a++);//取值为100,a加一 

    printf("%d\n",++a);//a取值为101+1=102,结果也为102 

    printf("%d\n",--a);//a取值为102-1=101 ,结果为101 

    printf("%d\n",a--);//a取值为101减一 ,结果为101 

    printf("%d\n",a+1);//结果为101,a仍为100 

    printf("%d\n",a);//输出100 

    return 0;

    }