• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            C++編程失樂園

            致力于解決論壇的不足,探討C++的原理

            C/C++隨筆 之 一個有趣的C循環問題

            void main()
            {
            ?int i;
            ?int a[10];
            ?for(i = 0;i <=10;i ++)
            ??a[i] = 0;
            }
            大家看,很簡單的一個問題,但是為什么會一直執行呢?
            明顯,聰明的你看出問題出現for(i = 0;i <= 10;i ++)???a[i] = 0;
            總共定義了10個int,明顯循環超出了范圍,
            下面我們就來看看其匯編如何運行,大家就都明白了.
            00401031?? mov???????? eax,dword ptr [ebp-4]
            00401034?? add???????? eax,1
            00401037?? mov???????? dword ptr [ebp-4],eax
            0040103A?? cmp???????? dword ptr [ebp-4],0Ah
            0040103E?? jg????????? main+3Dh (0040104d)
            00401040?? mov???????? ecx,dword ptr [ebp-4]
            00401043?? mov???????? dword ptr [ebp+ecx*4-2Ch],0
            0040104B?? jmp???????? main+21h (00401031)
            程序一直在00401031-0040104B之間運行,問題出在00401043上面,
            i變量在dwort ptr[ebp-4]
            那么當執行到i =10
            dword ptr[ebp + ecx*4-2cH]= dword ptr[ebp+dword ptr[ebp-4]*4-2ch]
            =dword ptr[ebp + 10*4-44] = dword ptr[ebp-4]
            哈哈,i變成了0

            posted on 2006-12-25 12:41 木木頭 閱讀(231) 評論(2)  編輯 收藏 引用 所屬分類: C++特性

            評論

            # re: 一個有趣的C循環問題 2006-12-25 13:04 pengkuny

            不懂,是否一定要學匯編  回復  更多評論   

            # re: 一個有趣的C循環問題 2006-12-25 13:20 Dain

            這是數組是按照升序存放的,使得i的地址與a[10]的地址相同
            輸出它們的地址就知道怎么回事了  回復  更多評論   

            導航

            <2006年12月>
            262728293012
            3456789
            10111213141516
            17181920212223
            24252627282930
            31123456

            統計

            常用鏈接

            留言簿(3)

            隨筆分類(29)

            搜索

            最新隨筆

            最新評論

            中文字幕亚洲综合久久| 久久99国产综合精品女同| 久久久久国产精品嫩草影院| 久久久国产精品| 热99RE久久精品这里都是精品免费 | 久久水蜜桃亚洲av无码精品麻豆| 国产麻豆精品久久一二三| 一级做a爰片久久毛片人呢| 日韩久久久久中文字幕人妻| 无码日韩人妻精品久久蜜桃| 爱做久久久久久| 一日本道伊人久久综合影| 精品久久久久久国产91| 久久天天日天天操综合伊人av| 久久久久久午夜成人影院| 久久www免费人成看国产片| 色综合久久无码五十路人妻| 久久99精品久久久久久齐齐| 久久精品www人人爽人人| 国产免费久久精品99re丫y| 66精品综合久久久久久久| 亚洲精品无码成人片久久| 日韩欧美亚洲国产精品字幕久久久| 久久成人影院精品777| 精品国产一区二区三区久久久狼| 亚洲精品tv久久久久| 久久午夜综合久久| 精品久久久久久国产免费了| 成人久久久观看免费毛片| 亚洲精品白浆高清久久久久久| 蜜臀久久99精品久久久久久| 国产精品嫩草影院久久| 国产精品美女久久久久网| 久久99国产综合精品免费| 久久精品亚洲日本波多野结衣 | 97久久精品无码一区二区| 久久久久久久91精品免费观看| 久久国产精品一区| 久久精品国产精品亜洲毛片| 精品国产综合区久久久久久| 久久99精品久久久久久噜噜|