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

printf(%d\n",a+1)不改变原来的值

http://img.mukewang.com/562b8367000133c704060208.jpg

http://img.mukewang.com/562b8394000121a000990171.jpg

http://img.mukewang.com/562b82710001887806820226.jpg

#include

int main()

 {    int x = 101;    

printf("%d\n",x+1);    

return 0; }

 运行结果为102 为什么?

提问者:浅忆影流年 2015-10-24 21:08

个回答

  • onemoo
    2015-10-25 11:54:32
    已采纳

    前一句打印时a的值是101,a--的值也是101,那句执行过后,a的值就自减为100了。

    然后在这一句就是打印a+1=100+1=101,这句就是单纯的一个加法,不会改变a本身的值啊。


    也许你有些概念没有厘清,详细解答请看这里我的回答 http://www.imooc.com/qadetail/83948

  • Soulike
    2015-10-24 22:04:52

    题主,你是没分清楚a++与++a的区别么?注释的上一行代码执行完后a的值是100啊

  • 兰花石上彩虹天
    2015-10-24 21:27:36

    printf(“%d\n",a+1);输出的是a+1的值,不是a;

    a=a+1;

    printf("%d\n",a);此时才会被改变。