• <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 木木頭 閱讀(233) 評論(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)

            搜索

            最新隨筆

            最新評論

            中文字幕久久亚洲一区| 无遮挡粉嫩小泬久久久久久久| 国产亚洲欧美成人久久片| 狠狠色丁香久久婷婷综合五月| 俺来也俺去啦久久综合网| 久久97久久97精品免视看秋霞| 久久夜色撩人精品国产| 无码人妻久久一区二区三区免费丨| 久久综合久久久| 97精品国产91久久久久久| 99久久免费国产精品| 狠狠色丁香婷婷久久综合不卡| 99久久国产免费福利| 国产亚洲美女精品久久久久狼| 午夜精品久久久久久影视riav| 午夜精品久久久久久中宇| 欧美精品一区二区久久| 国产精品免费久久| 狠狠精品久久久无码中文字幕 | 久久这里都是精品| 久久久噜噜噜久久| 精品免费久久久久久久| 久久精品中文字幕无码绿巨人| 精品久久人人爽天天玩人人妻 | 国产精品免费看久久久| 亚洲精品tv久久久久久久久| 久久狠狠高潮亚洲精品| 久久www免费人成精品香蕉| 久久国产精品偷99| 久久久一本精品99久久精品88| 国产亚洲色婷婷久久99精品91| 99热热久久这里只有精品68| 亚洲国产精品综合久久一线| 久久精品人人做人人妻人人玩| 久久精品亚洲精品国产欧美| 欧美日韩精品久久久免费观看| MM131亚洲国产美女久久| 波多野结衣久久| 99久久精品免费看国产一区二区三区 | 人妻无码久久精品| 99久久综合国产精品二区|