int x=10,y; y=(x++)+(--x)+(++x); printf("%d,%d\n",y,x); 运行结果为28,11. 求解释
int x=10,y; y=(x++)+(--x)+(++x); printf("%d,%d\n",y,x); 运行结果为28,11. 求解释
日期:2021-11-12 07:57:59 人气:1
忘了汇编这一点,这个表达式在codeblock里编译的时候会有警告,就是说对x的操作是未定义的,
刚才的结果是在vs2008里做的
mov
dword
ptr
[x],0Ah
00EB13D5
8B
45
F8
mov
eax,dword
ptr
[x]
00EB13D8
83
E8
01
sub
eax,1
刚才的结果是在vs2008里做的
mov
dword
ptr
[x],0Ah
00EB13D5
8B
45
F8
mov
eax,dword
ptr
[x]
00EB13D8
83
E8
01
sub
eax,1