wiele instrukcji przypisania w printf in c [duplikat]

To pytanie ma już odpowiedź tutaj:

Dlaczego te konstrukty wykorzystują niezdefiniowane zachowanie przed i po zwiększeniu? 14 odpowiedzi

czy ktoś może pomóc mi zrozumieć wynik działania kodu poniżej:

int main()
{
    int a=35;
    printf("%d %d %d %d %d",a--,a,a=20,a++,a=39);
    return 0;
}

wydajnoś: 20 19 19 39 19

doceniono wgląd w sposób, w jaki przypisanie jest obsługiwane (kompilowane) wc w funkcji printf.