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

对题目及输出结果的疑惑

printf("%d\n",a--); 这一行的结果是不是写错了? 讲道理应该是100啊。。

提问者:旧时风染 2017-02-02 10:57

个回答

  • DanaQC
    2017-02-02 11:29:47
    已采纳

    首先要明白a++是执行后自增,++a是执行前自增。a--与--a道理一样。我们再按顺序看看:

    a被赋值100了,第一条输出结果为100,输出后a的值已成为101。第二条输出前自增,故结果为102,第三条输出前自减,结果为101。此时a仍为101,第四条输出后才自减,故输出结果为101并没有错误。