|
发表于 2017-3-18 12:56:18
|
显示全部楼层
说真的,纠结这类问题没有意义
- int a, b, c;
- a = (b = 3, 4, c = b++ + 5, ++c + ++b);
- 00A3204E mov dword ptr [b],3
- 00A32055 mov eax,dword ptr [b]
- 00A32058 add eax,5
- 00A3205B mov dword ptr [c],eax
- 00A3205E mov ecx,dword ptr [b]
- 00A32061 add ecx,1
- 00A32064 mov dword ptr [b],ecx
- 00A32067 mov edx,dword ptr [c]
- 00A3206A add edx,1
- 00A3206D mov dword ptr [c],edx
- 00A32070 mov eax,dword ptr [b]
- 00A32073 add eax,1
- 00A32076 mov dword ptr [b],eax
- 00A32079 mov ecx,dword ptr [c]
- int a, b, c;
- a = (b = 3, 4, c = b++ + 5, ++c + ++b);
- 00A3207C add ecx,dword ptr [b]
- 00A3207F mov dword ptr [a],ecx
- printf("a = %d, b = %d, c = %d\n", a, b, c);
- 00A32082 mov eax,dword ptr [c]
- 00A32085 push eax
- 00A32086 mov ecx,dword ptr [b]
- 00A32089 push ecx
- 00A3208A mov edx,dword ptr [a]
- 00A3208D push edx
- 00A3208E push offset string "a = %d, b = %d, c = %d\n" (0A37BFCh)
- 00A32093 call _printf (0A31343h)
- 00A32098 add esp,10h
复制代码 |
|