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

大概这样理解就对了

#include <stdio.h>

int main()

{

    int a = 100;

    int x = 0;

    printf("a=%d\n",a++);//a取值100,显示100但a运算结果为101

    printf("a=%d\n",++a);//a先运算,101+1,再取结果就是102.

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

    printf("a=%d\n",a--);//a先取值101,所以显示101,但结果100

    printf("a=%d\n",a+1);//a=100再加上1,所以显示101

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

    printf("x=%d\n",x++);//x取值0,再运算0+1,结果为1显示0.

    printf("x=%d\n",++x);//x先运算1+1=2,再取值2,显示2.

    return 0;

}


提问者:80后试着学 2018-08-03 13:24

个回答

  • 慕后端632133
    2018-08-03 22:30:45

    a++可以理解为b=a++,如a=5,先取值b=a即b=5,然后再运算a=a+1即a=6 ; 同理++a可以理解为c=++a,如a=6,先运算a=a+1即a=7,然后再取值c=a即c=7