不确定如何在C中达到此输出

时间:2015-03-17 22:36:47

标签: c function pointers

我理解为什么第一个print语句会输出-3 5 8 2。但第二次打印输出4 5 8 0。我知道58是它们的原因,因为它们各自的值保持不变,但我不知道w的值是4和{{} {1}}的值变为z。我认为我对C中指针的理解可能有点模糊。

0

1 个答案:

答案 0 :(得分:2)

如果您根据mysterious*a*b *cw,{{1},翻译w内的步骤然后分别出现:

z

单步执行此操作:w = z; w = w + w; z = w - w; z;因此2变为w,然后2;最后4变为z 4 - 4