c新手吧 关注:8,591贴子:48,090
  • 16回复贴,共1

【新手求教】关于自增的前置和后置的问题

只看楼主收藏回复

如图,为什么会这样?看不懂呢
我的理解是:++i先自增,i的值为5,然后再自增一次,i的值为6,5+6=11,为什么运算出来是12啊(在编译器上运行过)


1楼2015-05-21 23:17回复
    是啊是啊。同有这样的问题。


    IP属地:江苏来自iPhone客户端2楼2015-05-21 23:18
    回复
      都说了根据编译系统不同而算的结果也不同


      来自Android客户端3楼2015-05-21 23:22
      回复



        来自Android客户端4楼2015-05-21 23:26
        收起回复
          这个很简单,就是先自加,然后相加,不就等于12了,哪个编译器都一样的结果


          IP属地:北京来自Android客户端5楼2015-05-22 00:06
          回复
            楼主记住:i相同加1两次,然后再算中间的+号,也就是两个6相加,懂了吧?不用谢我。


            IP属地:广东来自Android客户端6楼2015-05-22 13:27
            收起回复
              其实我是奉吧主大人之命来顶贴的...


              IP属地:广东7楼2015-05-22 18:42
              回复
                你要知道,在程序的世界
                i=4;
                i+1不一定等于4+1
                等你学到易失域或者线程就明白了。
                <======================>
                  |祝top gear早日回归|


                来自Android客户端8楼2015-05-26 20:08
                回复
                  我猜。。。在内存中,只有一个i值,开始时,值为4,自增一次,i=5,然后计算第二个自增,操作的还是第一个i,也只有一个i,于是i就等于6了?我猜的。。。


                  IP属地:北京来自Android客户端9楼2015-05-29 11:39
                  回复