Просьба объяснить мне этот код оператора декремента декремента [закрыт]

Ниже приведен код, который я запускаю в ubuntu 13.10. Код: -

    #include<stdio.h>
    main()
    {
       int i=10,j=10;
       i=i++ + ++j;
       printf("i=%d j=%d\n",i,j);
       j=++i + j++;
       printf("i=%d j=%d\n",i,j);
    }

Выход: -

    i=21 j=11 
    i=22 j=33

Логически, согласно правилам ans должно быть: -

    i=22 j=11
    i=23 j=35

И когда я запускаю этот код в ubuntu 12.10, тогда я получаю правильный ans, т. е. выше ans. Пожалуйста, объясните, что происходит?

1
задан 22 March 2014 в 11:43

0 ответов

Другие вопросы по тегам:

Похожие вопросы: