Приращение и приоритет логических операторов [дубликаты]

На этот вопрос уже есть ответ здесь:

Поведение короткого замыкания логических выражений в C в этом примере 1 ответПриоритет оператора по сравнению с порядком оценки 6 ответов

В программе, показанной ниже, префикс должен оцениваться первым, потому что он имеет более высокий приоритет, но ответ-2, 2, 0, 1 и это объясняется в книге "поскольку LHS of || является истинным, RHS не оценивается".
Почему это так? Все приращения должны выполняться сначала, а затем логический должен быть проверен из-за приоритета.

#include<stdio.h>

int main()
{
    int i=-3, j=2, k=0, m;
    m = ++i || ++j && ++k;
    printf("%d, %d, %d, %d\n", i, j, k, m);
    return 0;
}

Ответы на вопрос(3)

Ваш ответ на вопрос