מה אתה לא מבין?
למה זה לא מוגדר? כי ועדת הסטנדרט החליטה שזו התנהגות לא מוגדרת... למה החליטו ככה? אולי בגלל שעל מנת לכפות את ההתנהגות האינטואיטיבית היה צורך להגדיר את = כ-sequence point, דבר שהיה משפיע על מקומות אחרים בשפה. אולי בגלל שעל מנת להגדיר חד-משמעית מה פעולה כזו עושה, אתה חייב לממש את ההשמה הנסתרת בתוך ++i לפני ההשמה ב-=. אולי בגלל שקשה למממשי קומפיילרים, לממש את ההתנהגות הזו, על פלטרפורמות מסוימות.