Инкрементные указатели, точная последовательность
Я только начал изучать C, и я понимаю, что
*a = *b;
a++;
b++;
а также
*a++ = *b++
эквивалентны, но это то, что на самом деле происходит, когда линия
*a++ = *b++
называется? Может кто-нибудь уточнить, как компилятор интерпретирует вторую строку? Я знаю о приоритете справа налево и тому подобное, но может ли кто-нибудь точно написать шаги, которые компилятор использует для интерпретации этой строки кода?