Visual C ++中的多个增量运算符

时间:2013-09-05 02:37:07

标签: c++ visual-c++ operators increment

我试图理解为什么以下三种情况导致Visual C ++编译器的输出不同

计划1

  i = 0;
  while ( i < 100)
  {
      printf( "%d: %d\n", array1[i], array2[i]);
      i++;
  }

计划2

  i = 0;
  while ( i < 100)
  {
      printf( "%d: %d\n", array1[i], array2[i++]);
  }

计划3

  i = 0;
  while ( i < 100)
  {
      printf( "%d: %d\n", array1[i++], array2[i]);
  }

根据我的理解,我希望增量运算符会在计算表达式后增加 i 的值。最初我认为这三个会导致相同的输出,但在看到输出后,我期待至少程序1和程序2 输出应该是相同的。

然而,在所有三种情况下,输出都不同。请纠正我在这里缺少的东西。

0 个答案:

没有答案