备注:在现代c++ 编译器release优化下,这些问题点都是浮云。
vs2017(2022) Debug模式下,进入断点按下Ctr+F11组合键或者(Ctrl + Alt + D)或者,得到反汇编结果如下:
for (int c = 0; c < 3;c++) {
00B4277B mov dword ptr [ebp-20h],0
00B42782 jmp main+5Dh (0B4278Dh)
00B42784 mov eax,dword ptr [ebp-20h]
00B42787 add eax,1
00B4278A mov dword ptr [ebp-20h],eax
00B4278D cmp dword ptr [ebp-20h],3
00B42791 jge main+65h (0B42795h)
}
00B42793 jmp main+54h (0B42784h)
int c1 = 0;
00B42795 mov dword ptr [c1],0
for (int d = 0; d < 3; ++d) {
00B4279C mov dword ptr [ebp-38h],0
00B427A3 jmp main+7Eh (0B427AEh)
00B427A5 mov eax,dword ptr [ebp-38h]
00B427A8 add eax,1
00B427AB mov dword ptr [ebp-38h],eax
00B427AE cmp dword ptr [ebp-38h],3
00B427B2 jge main+86h (0B427B6h)
}
断点调试情况下,通过菜单进入反汇编如下图: