Программирование на C: + = vs = +

Мой профессор и я участвуем в небольшом споре об операторе + = в C. Он говорит, что + = или = + будут работать, но он не уверен, почему работает = +.

int main()
{
    int i = 0, myArray[5] = {1,1,1,1,1};

    while(i < 5)
    {
            myArray[i] += 3 + i;
            printf("%d\n", myArray[i]);
            i++;
    }

    system("pause");
}

Результатом будет 4, 5, 6, 7, 8. Изменение оператора + = на = + дает те же результаты. Однако - = не делает то же самое, что и = - (что очевидно, поскольку он рассматривает 3 как 3).

Итак, гуру Си:

  • Почему это работает с = +?
  • Как компилятор C обрабатывает = + по сравнению с + =?
8
задан A Student 16 February 2011 в 02:29
поделиться