亚洲av成人无遮挡网站在线观看,少妇性bbb搡bbb爽爽爽,亚洲av日韩精品久久久久久,兔费看少妇性l交大片免费,无码少妇一区二区三区

Chinaunix

標(biāo)題: 大家看我的這幾行c代碼,分析一下我的輸出結(jié)果?謝謝了。 [打印本頁(yè)]

作者: LoveFreedom    時(shí)間: 2005-04-12 20:32
標(biāo)題: 大家看我的這幾行c代碼,分析一下我的輸出結(jié)果?謝謝了。
#include <stdio.h>;
int main()
{
int a,b,c1,c2,c3,c4;
a=10;
b=100;
c1=a---b;
c2=a -- - b;
c3=a - -- b;
c4=a-- - b;
printf("\n***************************************";
printf("\n a---b is %d",c1);
printf("\n a -- - b is %d",c2);
printf("\n a - -- b is %d",c3);
printf("\n a-- - b is %d",c4);
printf("\n***************************************";
return 0 ;
}

輸出結(jié)果:
***************************************
a---b is -90
a -- - b is -91
a - -- b is -91
a-- - b is -91
***************************************

注:c1的結(jié)果我清楚,c2,c3,c4,我弄糊涂了。
作者: x911    時(shí)間: 2005-04-12 21:39
標(biāo)題: 大家看我的這幾行c代碼,分析一下我的輸出結(jié)果?謝謝了。
"--"是從右向左接合的原因吧?
作者: kernelxu    時(shí)間: 2005-04-12 22:02
標(biāo)題: 大家看我的這幾行c代碼,分析一下我的輸出結(jié)果?謝謝了。
察看其反匯編代碼:
  1. 5:    a=10;
  2. 00401028   mov         dword ptr [ebp-4],0Ah
  3. 6:    b=100;
  4. 0040102F   mov         dword ptr [ebp-8],64h
  5. 7:    c1=a---b;
  6. 00401036   mov         eax,dword ptr [ebp-4]
  7. 00401039   sub          eax,dword ptr [ebp-8]        /*做減法*/
  8. 0040103C   mov         dword ptr [ebp-0Ch],eax
  9. 0040103F   mov         ecx,dword ptr [ebp-4]
  10. 00401042   sub          ecx,1                                   /*a自減1*/
  11. 00401045   mov         dword ptr [ebp-4],ecx
  12. 8:    c2=a -- - b;                                                    /*同上*/
  13. 00401048   mov         edx,dword ptr [ebp-4]
  14. 0040104B   sub         edx,dword ptr [ebp-8]
  15. 0040104E   mov         dword ptr [ebp-10h],edx
  16. 00401051   mov         eax,dword ptr [ebp-4]
  17. 00401054   sub         eax,1
  18. 00401057   mov         dword ptr [ebp-4],eax
  19. 9:    c3=a - -- b;
  20. 0040105A   mov         ecx,dword ptr [ebp-8]   
  21. 0040105D   sub         ecx,1                                   /*首先b自減1*/
  22. 00401060   mov         dword ptr [ebp-8],ecx
  23. 00401063   mov         edx,dword ptr [ebp-4]
  24. 00401066   sub         edx,dword ptr [ebp-8]        /*做減法*/
  25. 00401069   mov         dword ptr [ebp-14h],edx
  26. 10:   c4=a-- - b;                                                    /*同7*/
  27. 0040106C   mov         eax,dword ptr [ebp-4]
  28. 0040106F   sub         eax,dword ptr [ebp-8]
  29. 00401072   mov         dword ptr [ebp-18h],eax
  30. 00401075   mov         ecx,dword ptr [ebp-4]
  31. 00401078   sub         ecx,1
  32. 0040107B   mov         dword ptr [ebp-4],ecx
  33. 11:   printf("\n***************************************");
復(fù)制代碼



看此貼:
http://72891.cn/forum/v ... ;highlight=kernelxu
作者: LoveFreedom    時(shí)間: 2005-04-13 20:29
標(biāo)題: 大家看我的這幾行c代碼,分析一下我的輸出結(jié)果?謝謝了。
我個(gè)人分析是這樣的:

c1=a---b    相當(dāng)于 c1=a-b; a—;
c2=a -- - b 相當(dāng)于 c2=a-b;  a--;
c3=a - -- b 相當(dāng)于 --b;c3=a-b;
c4=a-- - b; 相當(dāng)于 c4=a-b;a--;




歡迎光臨 Chinaunix (http://72891.cn/) Powered by Discuz! X3.2